Buscar

Always on Availability Groups Alta disponibilidade no SQL Server

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 28 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 28 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 28 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

www.devmedia.com.br
[versão para impressão]
Link original: http://www.devmedia.com.br/articles
/viewcomp.asp?comp=31060
Conheça nesse artigo o componente always on
availability groups na teoria e na prática
Fique por dentro
O artigo descreve as principais características do novo recurso de
alta disponibilidade e recuperação de desastres do SQL Server.
Fazendo comparações com as tecnologias já existentes do produto,
são apresentados os novos conceitos, situações e recursos que esta
nova tecnologia traz aos ambientes de bancos de dados.
Também é apresentado ao leitor quais os pré-requisitos e
procedimentos a serem considerados na hora de implementar esta
nova tecnologia.
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
1 de 28 07/02/2017 13:34
O conhecimento aqui compartilhado é indicado para todos os
profissionais de tecnologia que lidam direta e indiretamente com a
plataforma SQL Server, seja relacionado a infraestrutura ou
desenvolvimento, uma vez que manter o ambiente de banco de
dados disponível e simultaneamente, extrair o máximo de
funcionalidade e performance dele é essencial a qualquer empresa
que busca uma vantagem tecnológica estratégica no mercado atual,
independente do segmento de atuação que ela se encontra.
O always on availability groups é a próxima evolução das tecnologias
de alta disponibilidade e recuperação de desastres do SQL Server.
Lançado na versão 2012, este novo recurso se baseia no espelhamento
dos registros de transações escritos no transaction log (assim como
feito no database mirroring) para manter em sincronia uma ou mais
réplicas.
Diferente do database mirroring onde as sessões de espelhamento são
criadas por banco de dados, no availability groups trabalhamos com
conjuntos lógicos de bancos de dados, chamados grupos de alta
disponibilidade, que são espelhados e gerenciados como uma única
unidade.
Uma das características desta nova tecnologia é a possibilidade de se
ter mais de um espelho para cada banco de dados (similar ao
encontrado no log shipping).
No SQL Server 2012 é possível até 4 réplicas para cada grupo de alta
disponibilidade, enquanto que na versão 2014, este limite já foi
expandido para 8.
Adicionalmente, as réplicas podem ser usadas para operações de
leitura, como extração de relatórios, e rotinas administrativas, como
backups e checkdb. Este comportamento permite que você minimize o
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
2 de 28 07/02/2017 13:34
impacto deste tipo de requisição no ambiente produtivo.
Características
Múltiplas réplicas
Assim como encontramos no log shipping, esta nova funcionalidade
permite que você tenha múltiplas cópias do seu banco de dados
espalhadas através de servidores secundários, chamados de réplicas.
Na prática, essa capacidade permite que você tenha mais de uma
máquina esperando para suportar o ambiente de produção caso o
servidor principal sofra com alguma indisponibilidade. Este
comportamento é ilustrado na Figu r a 1 .
Figu r a 1 . Múltiplas réplicas associadas a um servidor principal
Compressão do T-Log
Assim como o database mirroring, o availability groups mantém suas
réplicas sincronizadas transferindo as transações efetuadas no banco
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
3 de 28 07/02/2017 13:34
de dados principal para os demais servidores.
Na prática, esta tecnologia monitora e coleta tudo que é registrado no
transaction log do SQL Server, enviando estes comandos na exata
sequência que ocorreram para que as réplicas possam reproduzi-los
nas bases de dados afim de mantê-las sincronizadas.
Adicionalmente, o availability groups usa a mesma compressão do
T-LOG usada no database mirroring para enviar as transações para as
réplicas, reduzindo assim o consumo dos links de comunicação entre os
servidores, uma vez que os registros do T-LOG são compactados no
servidor primário, enviados às réplicas e somente lá são
descompactados e aplicados no banco de dados redundante.
Espelhamento síncrono ou assíncrono
A transferência das transações registradas no T-LOG pode ser feita de
forma síncrona ou assíncrona, dependendo da opção escolhida na
configuração.
A primeira opção é normalmente escolhida para manter atualizadas
réplicas em servidores hospedados no mesmo datacenter do servidor
principal, essas bases de dados têm como principal objetivo garantir a
alta disponibilidade do ambiente.
A segunda opção é mais usual para manter réplicas localizadas
geograficamente distantes e/ou conectadas ao ambiente principal
através de links de comunicação instáveis. Sua principal finalidade é
prover a capacidade de recuperação de desastres para o negócio no
caso de um imprevisto com o datacenter principal.
Utilização das réplicas
Enquanto o database mirroring permite que a réplica do banco de
dados seja usada apenas através do recurso database snapshot, o
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
4 de 28 07/02/2017 13:34
availability groups permite que você use as réplicas, e claro, o
hardware que as suporta, com a finalidade de extrair relatórios,
realizar operações de backup, dentre outras atividades pesadas de
leitura que, se aplicadas em produção, podem prejudicar o ambiente
como um todo.
Na prática, a possibilidade de direcionar atividades de leitura ao
servidor secundário traz ao DBA a possibilidade de aproveitar melhor o
hardware que está sendo usado como redundante, aumentando a
capacidade computacional do ambiente de banco de dados.
Gerenciamento integrado
Outro ponto interessante que merece destaque no availability groups é
o gerenciamento integrado com o management studio. Com este
dashboard intuitivo, exibido na Fi gu r a 2 , é fácil verificar o
funcionamento do ambiente, realizar configurações e até mesmo
failover dos bancos de dados, tudo sem a necessidade de acessar
nenhuma ferramenta a não ser o SSMS.
abr i r im agem em n ova j an e la
Figu r a 2 . Dashboard administrativo do SQL Server availability groups
Conceitos
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
5 de 28 07/02/2017 13:34
Availability databases
São os bancos de dados contemplados na solução de alta
disponibilidade provida pelo availability groups, cada grupo de alta
disponibilidade pode ter inúmeros bancos de dados, que serão
gerenciados como um conjunto quando for necessário a realização de
um failover entre os servidores – réplicas – introduzidas na arquitetura
da solução.
Availability réplicas
Réplica é a denominação para os servidores introduzidos no availability
groups. Estas máquinas hospedam cópias dos bancos de dados e
dependendo das configurações – como veremos mais adiante – podem
ser usadas para aceitar conexões “somente-leitura” e/ou extração de
backups, eliminando assim o impacto destas operações no ambiente
de produção.
Availability group listener
O listener atua como endereço lógico usado pelas aplicações para se
conectar aos bancos de dados configurados no availability groups.
Cada grupo de alta disponibilidade possui, no mínimo,um listener que
é composto por nome, porta e IP de conexão.
Endpoints
São aberturas na camada de segurança do SQL Server para que as
conexões sejam recebidas. Normalmente, quando falamos em
availability groups, não precisamos nos preocupar com estes itens,
visto que o próprio serviço de banco de dados os configura e gerencia
automaticamente.
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
6 de 28 07/02/2017 13:34
Failover
Failover é a denominação usada quando um servidor secundário,
dentro de um cenário de alta disponibilidade, assume a
responsabilidade pelo ambiente, se tornando então o ambiente
primário, produtivo.
No availability groups, o failover ocorre quando o servidor primário
sofre alguma indisponibilidade ou quando solicitamos manualmente
que o grupo de alta disponibilidade migre para outro servidor (réplica)
na mesma estrutura de contingência.
Arquitetura geral da solução
O SQL Server 2012 always on availability groups permite que um
grupo de bancos de dados seja espelhado para até 4 servidores
réplicas, onde existirão cópias inteiras destas bases. Vamos usar o
cenário apresentado na Fi gu r a 3 como exemplo.
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
7 de 28 07/02/2017 13:34
Figu r a 3 . Arquitetura simplificada do AVAILABILITY GROUPS
Dos cinco servidores possíveis a serem contemplados – um primário e
quatro réplicas – três deles podem ser configurados para
espelhamento síncrono, sendo obrigatoriamente um deles o primary.
A Figu r a 3 destaca o modo de espelhamento das duas réplicas
“REAL-TIME” em verde. Este modo de sincronia é ideal para servidores
dedicados a alta disponibilidade, localizados no mesmo datacenter ou
localização física, onde o link possui capacidade o suficiente para
transmitir todos os dados sem onerar o funcionamento do ambiente.
Os outros dois servidores devem ser configurados para serem
atualizados de forma assíncrona, sendo ideais para serem configurados
em servidores hospedados em outro espaço físico, como outro
datacenter ou mesmo outro estado, como no exemplo, onde os
servidores estão localizados na cidade do Rio de Janeiro. A Fi gu r a 3
destaca essa sincronia em vermelho.
Reparem que um dos servidores dedicados a alta disponibilidade,
localizados na cidade de São Paulo, possui failover automático. Com o
availability groups, dois servidores (produção e uma réplica) devem
ser configurados desta forma para que caso o servidor primary fique
indisponível, o outro servidor assuma automaticamente a
responsabilidade de prover dados às aplicações.
Adicionalmente, os servidores réplicas, dependendo das configurações
e do licenciamento, podem ser usados para leitura por parte das
aplicações e também pela rotina de backup.
Durante o procedimento de configuração do availability groups, qual
veremos mais adiante em nosso laboratório, teremos a oportunidade
de ajustar as preferências relacionadas à legibilidade das réplicas dos
bancos de dados e também das rotinas de backup.
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
8 de 28 07/02/2017 13:34
Implementação
Nas próximas seções, iremos abordar os pré-requisitos necessários
para a implementação do always on availability groups e, na
sequência, teremos um passo a passo de como configurar um
ambiente com dois servidores em alta disponibilidade usando o
Windows Server 2012 R2 e o SQL Server 2012.
Pré-requisitos
Para a implementação do availability groups é necessário que todos os
servidores de banco de dados envolvidos tenham instalados o SQL
Server 2012 ou superior (2014, por exemplo). Não se assustem, mas a
edição do SQL Server deve ser, impreterivelmente, a Enterprise, pois
qualquer edição inferior a esta não terá o always on availability groups
disponível.
O sistema operacional mais recomendado é o Windows Server 2012
R2, mas qualquer versão superior à 2008 – com Service Pack 2 –
também possui suporte ao SQL Server 2012, sendo assim apto a ser
utilizado.
Em relação às edições, como o availability groups depende da
capacidade do sistema operacional em funcionar dentro de um failover
clustering, somente aquelas que tem suporte a este recurso são
capazes de habilitar este novo incremento lançado no SQL Server2012.
A seguir temos a lista de versões e edições que dão suporte ao
Windows failover clustering e ao availability groups do SQL Server
2012:
· Windows Server 2008 SP2 Enterprise / Datacenter;
· Windows Server 2008 R2 SP1 Enterprise / Datacenter;
· Windows Server 2012 Standard / Datacenter;
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
9 de 28 07/02/2017 13:34
· Windows Server 2012 R2 Standard / Datacenter.
Adicionalmente, é essencial que todos os servidores façam parte de
um domínio Windows, mas não exerçam o papel de domain controller
dentro do ambiente. Para o SQL Server, é necessária a existência de
uma conta de serviço com permissão suficiente para executar o serviço
da própria plataforma de banco de dados.
A infraestrutura necessária para o servidor segue os mesmos
protocolos usados no failover clustering, ou seja, são necessárias no
mínimo duas interfaces de rede. Uma delas dedicada para o heartbeat
do cluster e a outra para que sejam feitas as conexões das aplicações
e usuários aos servidores. Há também a possibilidade de configurar as
múltiplas interfaces de rede para que funcionem como um time –
recurso denominado nic team.
Not a : É importante garantir a conectividade dos servidores, ou sej
a, permitir o acesso ao SQL Server através do firewall para que u
m servidor possa se conectar no outro livremente.
Implementação
Com os sistemas operacionais instalados e as placas de rede
devidamente configuradas, podemos iniciar os preparativos para a
implementação do availability groups. Em nosso laboratório, iremos
usar dois servidores equipados com o Windows Server 2012 R2
Standard, que já foi previamente instalado e configurado conforme os
pré-requisitos anteriormente mencionados.
A primeira etapa do nosso laboratório é a instalação de algumas
funcionalidades junto ao sistema operacional. Este passo inicial é
necessário para que possamos instalar o SQL Server 2012 Enterprise e
também habilitar o recurso failover clustering nos servidores.
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
10 de 28 07/02/2017 13:34
Instalação das features do Windows Server
Além das features já habilitados por padrão no Windows Server 2012,
é necessário a instalação de outras duas: .NET Framework 3.5 e
failover clustering.
A primeira é essencial para a instalação do próprio SQL Server 2012,
visto que o produto possui alguns componentes baseados nesta
plataforma de desenvolvimento, e a segunda é responsável por
permitir que o sistema operacional funcione como parte de um
ambiente de alta disponibilidade criado sobre a arquitetura do
Windows Server failover clustering.
A instalação de ambas é feita através da nova console de
gerenciamento do Windows Server, basta clicar em “MANAGE”e
posteriormente em “ADD ROLES AND FEATURES” para que uma janela
de seleção e configuração seja exibida. A Figu r a 4 exibe o novo painel
administrativo.
abr i r im agem em n ova j an e la
Figu r a 4 . Adicionando features no Windows Server 2012 R2
Ao clicar na opção apresentada, uma janela de configuração será
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
11 de 28 07/02/2017 13:34
exibida. Esta interface será usada para selecionar quais recursos e
funcionalidades do Windows Server serão instaladas no servidor. Basta
clicar em NEXT algumas vezes, até que seja apresentada a tela
apresentada na Figu r a 5 , onde você poderá escolher quais features
serão implantadas na máquina.
Nesta etapa, deveremos escolher as opções necessárias para nosso
laboratório – .NET Framework 3.5 e failover clustering – e na
sequência, clicar em NEXT.
Figu r a 5 . Adicionando features necessárias ao availability groups
Basta confirmar o procedimento para que a instalação seja iniciada. Se
o servidor estiver conectado à internet, o próprio sistema operacional
se encarregará de baixar os arquivos necessários. Caso não haja uma
conexão com a internet, você precisará indicar o diretório onde a mídia
do Windows Server está localizada através da opção “SPECIFY AN
ALTERNATE SOURCE PATH”, conforme mostra a Fi gu r a 6 .
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
12 de 28 07/02/2017 13:34
abr i r im agem em n ova j an e la
Figu r a 6 . Fornecendo um caminho local para a instalação do .NET
FRAMEWORK 3.5
Ao finalizar a instalação, é recomendada uma reinicialização no
servidor.
Instalação do SQL SERVER
Ao concluir a etapa relacionada à habilitação das features junto ao
sistema operacional e reiniciar os servidores, podemos iniciar a
instalação do SQL Server 2012.
Uma das principais diferenças entre o failover clustering e o availability
groups é o modo de instalação do SQL Server. No primeiro, a
instalação do produto é feita desde o início levando em consideração o
failover clustering, tanto que é usada uma opção especializada em
cluster para fazer a instalação.
Já no segundo, a instância do SQL Server pode ser local, prática
comumente chamada de “Standalone”, instalada usando a primeira
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
13 de 28 07/02/2017 13:34
opção apresentada no centro de instalação do próprio SQL Server,
exibido na Fi gu r a 7 .
abr i r im agem em n ova j an e la
Figu r a 7 . Centro de instalação do SQL Server 2012
Durante o processo de instalação você será solicitado a fazer diversas
escolhas acerca de opções (collation, por exemplo) relacionadas ao
produto SQL Server 2012. Estes ajustes devem ser feitos conforme o
padrão da empresa ou necessidades da aplicação.
Not a : São pré-requisitos para o funcionamento do availability gro
ups que todas as instâncias tenham o mesmo collation e executem
com uma conta de serviço que tenha permissão de conexão em to
das as instâncias do SQL Server participantes.
Após a instalação do SQL Server, é uma boa prática reiniciar o servidor
para validar as mudanças feitas pelo assistente de instalação junto aos
registros do Windows Server.
Con�guração do Windows failover
clustering
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
14 de 28 07/02/2017 13:34
Após a instalação e configuração do sistema operacional e com o SQL
Server já funcional nos servidores, podemos partir para a configuração
do Windows Server failover clustering e criação de um cluster para os
recursos do availability groups.
A implementação do failover clustering é feita através da ferramenta
administrativa failover clustering manager. Este utilitário, apresentado
na Figu r a 8 , será usado durante todo o processo de criação e
configuração do cluster.
abr i r im agem em n ova j an e la
Figu r a 8 . Ferramenta de administração do Windows Server failover
clustering
A primeira ação dentro do failover cluster manager é validar a
configuração das máquinas. Esta tarefa é feita usando a opção
“Validate Configuration” localizada no menu “Actions” no canto direito
da tela. Basta clicar para que o assistente seja iniciado.
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
15 de 28 07/02/2017 13:34
Ao clicar em next, você será solicitado a fornecer quais servidores
farão parte da arquitetura. Insira os nomes ou IPS das máquinas
clicando em “Add”. Ao inserir os dados de todos os servidores, clique
em next novamente.
Na janela subsequente, peça para que todos os testes sejam
realizados, para isso, basta deixar as opções padrão e avançar
novamente, confirmando junto a tela exibida na sequência.
Após a conclusão dos testes, um resumo do processo de configuração
será apresentado. É esperado que alguns itens relacionados à storage
apresentem status de warning. Estes alertas ocorrem porque não
estamos usando nenhum storage para prover armazenamento a nossa
estrutura.
A Figu r a 9 exibe um exemplo dos warnings mencionados. Para
exibi-los, basta clicar no botão “View Report” que o relatório será
apresentado no navegador.
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
16 de 28 07/02/2017 13:34
Figu r a 9 . Warnings de disco apresentados nos testes de validação do
cluster
Observem que na última tela do processo de configuração do cluster,
há uma caixa de seleção com o texto “Create the clsuter now using the
validated nodes...”. Deixar esta opção selecionada faz com que ao
clicar em finish, a interface de criação do cluster seja aberta.
É através do assistente de criação que iremos criar o cluster
propriamente dito. O utilitário também pode ser aberto clicando-se na
opção “Create cluster” na ferramenta de gerenciamento do recurso,
ilustrada anteriormente na Fi gu r a 8 .
Se você tiver optado por abrir a interface diretamente após os testes
de validação, as únicas informações que o assistente solicitará são o
nome e o IP do cluster, conforme ilustrado na Figu r a 1 0 .
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
17 de 28 07/02/2017 13:34
Se você clicar no botão junto à ferramenta de gerenciamento, terá de
fornecer o nome dos servidores novamente. Depois de preencher os
dados conforme as normas da sua empresa, basta clicar em next para
que o processo dê início à criação da estrutura.
Not a . Este processo deve ser feito usando uma conta que tenha p
ermissão de criação de objetos dentro do Active Directory, visto qu
e uma das etapas feitas durante a criação do cluster é criar uma c
onta de máquina dentro das OUS da empresa.
Figu r a 1 0 . Criando o Windows failover cluster
Após o procedimento de criação do cluster ser concluído, podemos
visualizá-lo nofailover cluster manager. Após esta etapa, podemos
configurar o SQL Server para, enfim, configurar o availability groups.
Con�guração do SQL Server
Somente após a criação do cluster podemos realizar as configurações
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
18 de 28 07/02/2017 13:34
no SQL Server, visto que o produto verifica se o servidor já faz parte
de um ambiente configurado em Windows Server Failover Clustering.
Inicialmente, precisamos acessar o SQL Server Configuration Manager,
ferramenta responsável pelo gerenciamento dos serviços do SQL
Server, e abrir a janela de propriedades do serviço principal dele (o
database engine). Dentro desta interface, há uma aba chamada
“Alwayson high availability” e nela devemos marcar a caixa de seleção
junto a descrição “Enable alwayson availability groups”, conforme a
Figu r a 1 1 .
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
19 de 28 07/02/2017 13:34
Figu r a 1 1 . Habilitando o availability groups no SQL Server
Esta etapa deve ser repetida em cada servidor que fizer parte do
nosso cluster. Ao clicar em OK, você será solicitado a reiniciar o SQL
Server para efetivar as mudanças.
Con�guração do availability groups
Após a configuração do ambiente, todas as etapas relacionadas ao
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
20 de 28 07/02/2017 13:34
availability groups são feitas através do management studio, principal
ferramenta do SQL Server. Dentro deste utilitário, podemos encontrar
junto ao object explorer um item chamado “alwayson high
availability”, basta clicar com o botão direito nele e selecionar a opção
“New Availability Group Wizard” para que uma nova interface seja
aberta.
Ao clicar em next, você terá de fornecer o nome do grupo de alta
disponibilidade que será criado e na sequência informar os bancos de
dados que farão parte deste grupo (conforme apresentado na Fi gu r a
1 2 ).
Importante destacar que para um banco de dados fazer parte de um
grupo de alta disponibilidade ele precisa ter recovery model full e ao
menos um backup full realizado. Os bancos de dados que atendem a
esses pré-requisitos são apresentados com status igual “Meets
Prerequisites”.
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
21 de 28 07/02/2017 13:34
Figu r a 1 2 . Selecionando os bancos de dados que estarão no grupo de
alta disponibilidade
Na janela seguinte, você indicará através do botão “Add Replica” quais
servidores serão réplicas do grupo de alta disponibilidade que está
sendo criado. É na interface apresentada na Fi gu r a 1 3 que você,
além de indicar os servidores, irá configurar se haverá failover
automático entre as réplicas, o modo de sincronização entre ela e
também se acesso somente leitura será permitido junto aos bancos de
dados configurados dentro deste grupo.
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
22 de 28 07/02/2017 13:34
Figu r a 1 3 . Indicando as réplicas e configurando suas opções
Na última aba desta interface, chamada “Listener”, você irá configurar
os dados de acesso ao grupo de alta disponibilidade. Estes dados serão
usados pelas aplicações para se conectarem aos bancos de dados
independentemente de qual servidor estiver com a responsabilidade
de ser o primário.
Ao selecionar a opção “Create and availability groups listener”, serão
habilitadas as caixas correspondentes a nome, porta e tipo de
configuração do IP (estático ou fornecido por um servidor DHCP), se
você optar por IP fixo – recomendado – você terá de adicionar um IP
para o grupo, como mostra a Figu r a 1 4 .
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
23 de 28 07/02/2017 13:34
Figu r a 1 4 . Configurando o Listener.
As demais abas permitem que você configure os endpoins, que já vêm
previamente configurados, e suas preferências de backup, onde você
poderá indicar quais réplicas serão usadas para a realização de
backups, inclusive, podendo selecionar prioridade para algum servidor
em especifico.
Os ajustes feitos nestas duas abas não influenciarão, inicialmente, na
criação e no funcionamento do grupo de alta disponibilidade.
Na janela subsequente, você indicará a forma que os bancos de dados
serão inicialmente sincronizados entre os servidores, nesta etapa você
teremos três opções. A primeira delas requer um diretório
compartilhado, visível entre todos os servidores participantes para
executar os backups dos bancos de dados e automaticamente,
restaurá-los nas réplicas.
A segunda opção deve ser selecionada quando já foi realizado o
restore nos servidores réplicas e a terceira delas pulará a sincronização
dos bancos de dados, deixando a estrutura de alta disponibilidade
inoperante até que você mesmo faça os backups e os restores. Em
nosso estudo de caso, escolheremos a primeira, apontando o diretório
compartilhado previamente criado em um dos servidores, como a
Figu r a 1 5 exibe.
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
24 de 28 07/02/2017 13:34
Figu r a 1 5 . Escolhendo a forma de sincronização inicial dos bancos de
dados
Ao clicar em next, algumas validações serão realizadas. Se todos os
testes forem concluídos com sucesso, você poderá avançar para a
janela de confirmação e finalmente, concluir o processo. Se caso
alguma validação apresentar problema, você terá de retornar e corrigir
o que for necessário.
Ao clicar em finish, o processo de criação do grupo de alta
disponibilidade será realizado, você poderá também gerar o script para
executar diretamente via T-SQL ou salvar para registro e
documentação. Quando todas as etapas forem concluídas, você terá
uma tela similar a exibida na Figu r a 1 6 .
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
25 de 28 07/02/2017 13:34
Figu r a 1 6 . Conclusão da criação do grupo de alta disponibilidade
Depois de concluídas todas as etapas, o ambiente está protegido
através do availability groups. Agora, caso uma indisponibilidade
ocorra no servidor principal, haverá contingência para que, se tudo
estiver configurado adequadamente, as aplicações continuem
suportando os negócios da empresa sem maiores problemas e
prejuízos ao faturamento da organização.
Algumas considerações importantes
Contained database
O contained database é uma funcionalidade que, assim como o always
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
26 de 28 07/02/2017 13:34
on availability groups,surgiu na versão 2012 do produto. Permite que
existam logins criados dentro do próprio banco de dados de negócio –
até então, ficavam obrigatoriamente no master.
Usando este novo recurso, elimina-se o típico problema popularmente
conhecido como “usuários órfãos”, visto que agora, ao migrar o banco
de dados de negócio, o login estará contemplado no próprio backup.
Seu uso junto a tecnologias como o database mirroring, o log shipping
e o próprio availability groups é de extrema importância, visto que ao
realizar o failover de um banco de dados para outro servidor, antes da
existência desta nova funcionalidade, frequentemente se encontrava
problemas devido à ausência de algum login na instância secundária,
dor de cabeça que não ocorrerá mais se o banco de dados for
configurado como contained database e o login for criado dentro dos
padrões deste novo recurso.
O futuro do database mirroring
É importante lembrar que o database mirroring foi anunciado
depreciado na versão 2012 do SQL Server, isso significa que esta
tecnologia será removida no produto, sendo a versão 2014 a última a
contemplar este recurso.
A Microsoft recomenda que se a edição do SQL Server que estiver
sendo utilizada permitir que você use o always on availability groups,
opte por este novo recurso, caso contrário, opte por usar o log
shipping, que permanecerá intocado nas próximas versões do SQL
Server.
O availability groups, sem dúvida, é uma solução que veio para ficar. É
robusta, flexível e capaz de suprir diversas necessidades relacionadas
a alta disponibilidade e recuperação de desastres.
Suas características permitem que as empresas usem de forma mais
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
27 de 28 07/02/2017 13:34
eficiente seus recursos, aumentando significativamente a rentabilidade
dos investimentos feitos em recursos para o ambiente de bancos de
dados.
Ainda, o fato de possuir gerenciamento integrado junto às próprias
ferramentas de administração e desenvolvimento do SQL Server só
aumentam a lista de argumentos positivos em relação a essa solução
de alta disponibilidade.
Com o anúncio da exclusão do database mirroring nas próximas
edições do SQL Server, o availability groups surge como uma boa
opção para empresas que procuram formas de proteger seu ambiente
de bancos de dados, tanto localmente quanto geograficamente.
Lin k s
I n t r odu ção ao ALW AYS ON AVAI LABI LI TY GROUPS n o SQL
SERVER
ht tp: / / msdn.microsoft .com/ en-us/ library/ gg509118.aspx
Pr é - r equ i si t os, r ecom en dações e l im i t ações do AVAI LABI LI
TY GROUPS
ht tp: / / msdn.microsoft .com/ en-us/ library/ f f878487.aspx
SQL SERVER 2 0 1 2 ALW AYS ON AVAI LABI LI TY GROUPS – O
VERVI EW
ht tp: / / msdn.microsoft .com/ en-us/ library/ f f877884.aspx
por Felipe de Assis
Revista SQL Magazine lover 
R
e
ce
b
a
 n
o
tif
ic
a
ç
õ
e
s 
:)
Always on Availability Groups: Alta disponibilidade no SQL Server http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=31060
28 de 28 07/02/2017 13:34

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes