Infraestrutura computacional para BI
Guilherme Galante
Infraestrutura para BI2
Roteiro Introdução Armazenamento de dados
Mídias de armazenamento RAID DAS, NAS, SAN Sistemas de Arquivo
Backup Alta Disponibilidade Virtualização e Computação em nuvem
Infraestrutura para BI3
Parte I – Introdução
Infraestrutura para BI4
BI: Passos para o desenvolvimento
Laris
sa T
. Mos
s,
Shak
u At
re
- Bu
sine
ss
Inte
llige
nce
Road
map
: Th
e Co
mpl
ete
Proj
ect
Life
cycl
e fo
r D
ecis
ion-
Supp
ort
Appl
icati
ons
- Ad
diso
n W
esle
y. 2
003
Infraestrutura para BI5
Demanda por Infraestrutura
Armazenamento Confiabilidade e Disponibilidade Capacidade Desempenho
Processamento Desempenho Escalabilidade (mudanças acontecem)
BIGrande
Quantidade de dados
Armazenamento
Processamento
Infraestrutura para BI6
Parte I – Armazenamento de Dados
O aumento da quantidade de dados emergiu como o maior desafio para a infraestrutura de hardware de data centers, com 47% dos clientes de grandes empresas classificando-o entre os três principais desafios, seguido por desempenho do sistema e escalabilidade (37%), além de congestionamento da rede e arquitetura de conectividade (36%). Gartner 2011.
Infraestrutura para BI7
Camadas de Armazenamento de dados
1. Mídias de Armazenamento
2. SAN (Storage Area Network)
3. Hardware de RAID
4. Software RAID e Ger. Volumes
5. Sistema de Arquivos
6. Aplicações e Banco de Dados
Infraestrutura para BI8
Parte I.1 – Mídias de Armazenamento
Infraestrutura para BI9
Discos Rígidos 90% de novas informações geradas são
armazenadas em discos rígidos (2007) Confiáveis(?!)
Compostos por diversos componentes Tempo de vida médio: 5 anos
Fatores relevantes para falhas: Idade Carga de uso Ambiente
Infraestrutura para BI10
Anatomia do disco
Infraestrutura para BI11
Probabilidade de Falhas em disco Estudo do Google (2007)
USENIX Conference on File and Storage Technologies (FAST’07) Dados coletados de 100.000 discos de seus servidores
Conclusões Após o segundo ano de vida do HD a probabilidade de falha
quadruplica A utilização do HD influencia menos que o esperado; a alta
utilização só aumenta sensivelmente a taxa de falhas nos 6 primeiros meses e após o 5º ano de uso
A temperatura também influencia menos que o esperado. A longo prazo a melhor temperatura de operação é entre 30-40 graus
Infraestrutura para BI12
S.M.A.R.T Self-Monitoring, Analysis and Reporting
Tecnhology Sistema de monitoramento de discos que
detecta e antecipa falhas, através de vários indicadores de confiabilidade Implementado no próprio disco
Infraestrutura para BI13
S.M.A.R.T – Informações do disco Seek error rate
Trilha não encontrada
Raw read error rate Problemas na mídia
magnética
hardware ECC recovered Correções de erro
Scan error rate Taxa de erros não reparáveis
Spin up time Tempo de inicialização
Reallocated sector count Setores realocados (!)
Temperatura
Contador de ativações/desativações
Horas de funcionamento
Infraestrutura para BI14
S.M.A.R.T Conclusões Google retiradas do S.M.A.R.T
Após o primeiro Scan Error (Raw Read Erro Rate) a chance de um HD falhar nos próximos 60 dias aumenta pelo fator 39
Após o primeiro Reallocation Count chance de um HD falhar nos próximos 60 dias aumenta pelo fator 14
Após o primeiro Offline Realocation chance de um HD falhar nos próximos 60 dias aumenta pelo fator 21
Após o primeiro Pending Sector chance de um HD falhar nos próximos 60 dias aumenta pelo fator 16.
2/3 das falhas podem ser previstas 1/3 ocorre sem aviso
Infraestrutura para BI15
Ferramentas Smartmontools (linux e windows)
http://sourceforge.net/apps/trac/smartmontools/wiki Disponível em várias distribuições Interface gráfica
http://gsmartcontrol.berlios.de/home/index.php/en/Home
CrystalDiskInfo (windows)
Disk Monitor (windows) http://www.ntfs.com/disk-monitor.htm
Infraestrutura para BI16
Solid State Disks - SSD Usam materiais semi-condutores para o
armazenamento Sem partes móveis Não é sensível a choque, altitude, vibração,
magnetismo Problemas:
limite de regravações custo
Compensa?
Infraestrutura para BI17
HDD vs SDD
Infraestrutura para BI18
Fitas Magnéticas Dispositivos de armazenamento de dados mais
utilizados no mercado corporativo para guardar dados e fazer backups
Desde que armazenadas adequadamente, podem conter informações por aproximadamente 1 século
Grande capacidade de armazenamento
Infraestrutura para BI19
Parte I.2 – RAID
Infraestrutura para BI20
RAID Redundant Array of Independent (Inexpensive)
Disks Motivação:
Redundância (confiabilidade) Desempenho Volumes lógicos maiores
Dividido em níveis (0 – 6) Hardware ou Sofware
Infraestrutura para BI21
RAID 0 Conhecido como stripping
Junção de 2 ou mais discos Sem redundância (!) Divisão dos dados em fatias (stripes)
Aumento do tamanho da unidade lógica Aumento do Desempenho
Blocos pode ser lidos/escritos em paralelo Não confundir com JBOD
Just a Bunch Of Disks
Quando usar: Quando for necessário APENAS desempenho Operações temporárias
20GB 20GB
40GB
Infraestrutura para BI22
RAID 0 - desempenho
Fonte: Clube do Hardware
Infraestrutura para BI23
RAID 1 Espelhamento de discos (mirroring)
Dados armazenados em dois ou mais dispositivos Redundância de dados Cara (50% do espaço de disco)
Desempenho: Leitura rápida (com suporte do SO) Escrita lenta
Quando usar: Aplicações que exigem redundância Leituras rápidas Ex. Pequenos servidores de arquivo 20GB 20GB
20GB
Infraestrutura para BI24
RAID 2, 3 e 4 Obsoletos e pouco utilizados Variações de RAID 0 RAID 2
Código de Hamming (correção de erros) Discos atuais já possuem este tipo de correção
RAID 3 Um disco para armazenar paridade (byte)
RAID 4 Um disco para armazenar paridade (bloco)
Infraestrutura para BI25
RAID 5 Divide dados entre todos os discos Paridade distribuída
Um disco pode falhar sem perda de dados
Bom desempenho Operações paralelas
Quando usar: Desempenho Redundância Servidores de BD Mínimo 3 discos 20GB 20GB 20GB 20GB
60GB
Infraestrutura para BI26
RAID 6 Variação do RAID 5 Duplicação dos blocos de paridade
Infraestrutura para BI27
RAID 0+1 Junção de dois volumes RAID0 em um volume RAID1 Dobra-se a velocidade de leitura e gravação Tolerância a falhas de até dois discos
RAIDs diferentes
Quando usar: Rapidez e redundância 4 discos necessários 50% perda de espaço
Infraestrutura para BI28
RAID 10 Junção de dois volumes RAID1 em um volume
RAID0 Desempenho elevado Confiabilidade
Infraestrutura para BI29
RAID 50 Combina o stripping do nível 0 com a paridade
distribuída do nível 5 Requer pelo menos 6 drives Escritas rápidas Ótimo desempenho
Infraestrutura para BI30
RAID – capacidade
Infraestrutura para BI31
RAID – desempenho
Infraestrutura para BI32
RAID: HW vs SW
Infraestrutura para BI33
RAID por hardware Controladoras que realizam todas as operações via hardware
Podem ser externas ou “plugáveis” Algumas placas-mãe já tem embutidas (ponte-sul compatível) Os chipsets da Intel que têm RAID integrado possuem a letra “R”
O sistema operacional apenas acessa os dados, como se houvesse um único HD instalado
ROCKETRAID2302
- RAID 0, 1, 5, 10 e JBOD- 4 discos SATA II ou SATA I- PCI express- Aprox. R$500,00
Infraestrutura para BI34
RAID por hardware O sistema operacional apenas acessa os dados, como se
houvesse um único HD instalado Muitas vezes como um drive SCSI
Chip Promise FastTrak 100 Lite da Soyo Dragon Plus
Infraestrutura para BI35
RAID por sofware A grande vantagem do RAID por software é seu
custo Nenhuma placa adicional ou mesmo
componente onboard faz parte dos seus requisitos
Na verdade, a única necessidade é ter um sistema operacional que dê suporte a essa tecnologia Windows, Linux e MacOS possuem suporte a RAID
Infraestrutura para BI36
RAID por sofware Windows 7 (ultimate)
Computador -> Gerenciar -> Gerenciamento de disco
Opções de RAID(partições/disco não alocados)
Infraestrutura para BI37
RAID por sofware Linux
Linha de comando: fdisk, mkraid e o mount (abordagem mais antiga) mdadm
Opção de interface: Webmin + módulo Linux RAID
Infraestrutura para BI38
RAID: Casos de Uso Servidor de imagens HTTP
Imagens dos produtos em uma loja online Conteúdo estático Fotos são inseridas pelos funcionários Muitos acessos Necessidade de acesso rápido Ficar offline o mínimo possível
Qual o melhor RAID?
Infraestrutura para BI39
RAID: Casos de Uso ACME Motion Picture Company
Criação de vídeos Quantidade enorme de conteúdo 3 servidores
1. Trabalhos terminados (Tolerância a Falhas)2. Trabalhos em andamento (Tolerância a Falhas)3. Edição (Desempenho e Tolerância a Falhas)
Infraestrutura para BI40
Boa escolha?
Infraestrutura para BI41
Parte I.3 – DAS, NAS, SAN
Infraestrutura para BI42
DAS, NAS e SAS Discos locais podem não ser suficientes
Desempenho Capacidade
Alternativas: DAS (Direct Attached Storage) NAS (Network Attached Storage) SAN (Storage Area Network)
Infraestrutura para BI43
Conceitos Conectividade:
Como os processadores e armazenamento estão físicamente conectados
Mídia: Cabeamento e protocolos
Protocolos: Como as requisições são comunicadas à mídia
Infraestrutura para BI44
Conectividade Conexão direta
Interligado por rede
REDE
Infraestrutura para BI45
Mídia Alguns Padrões:
1. Ethernet2. Fibre Channel3. Parallel SCSI4. SSA (Serial Storage Architecture)
2
3
4
Infraestrutura para BI46
Protocolos SCSI (Small Computer Systems Interface):
nível de bloco
NFS (Network File System) nível de arquivo
CIFS (Common Internet File System) nível de arquivo
Infraestrutura para BI47
DAS (Direct Attached Storage) Sistema de armazenamento conectado diretamente a um
servidor Não há acesso direto via rede
acessados pelos outros computadores da rede através do computador ligado a este dispositivo
Interface especial - host bus adapter (HBA) Variam de gavetas portáteis até dispositivos com vários discos Os principais protocolos usados nas conexões DAS são: ATA,
SATA, eSATA, SCSI, SAS e o Fibre Channel
Promise SmartStor DS4600 4-Bay
Dell PowerVault MD1000
Infraestrutura para BI48
NAS (Network Attached Storage) Um NAS, por sua vez, roda um sistema
operacional completo e funciona como um servidor de arquivos Também conhecidos como “filers”
Tratada como única unidade de armazenamento
Ligado diretamente na rede TCP/IP
Acessado via protocolos NFS e CIFS Usuário enxerga arquivos
Infraestrutura para BI49
NAS Limitações:
A rede pode ser um gargalo Quantidade de discos limitado à capacidade do
equipamento Mais apropriado para uso no nível de arquivo
Opções para implementação de NAS Equipamentos próprios PCs podem ser configurados como NAS
NFS OpenNas (BSD) OpenFiler (UNIX)
Infraestrutura para BI50
SAN (Storage Area Network ) É uma rede dedicada ao armazenamento de
dados Conecta storages aos servidores da rede Estrutura de rede dedicada, geralmente
baseada em Fibre Channel Os computadores que têm acesso ao SAN possuem
interface específica para ligar-se ao SAN, além da interface de rede tradicional
HBA (Host Bus Adapter)
Infraestrutura para BI51
SAN (Storage Area Network ) O acesso a dados na SAN é de baixo nível,
sendo parecido com o usado internamente em discos locais
Acesso a LUNs (unidades lógicas)
SAN
Discos FísicosUnidades Lógicas
Infraestrutura para BI52
SAN
Fonte: http://www.hardware.com.br/livros/servidores-linux/armazenamento-externo-das-nas-san.html
Infraestrutura para BI53
NAS vs SAN
Infraestrutura para BI54
NAS + SAN
Infraestrutura para BI55
iSCSI Tecnologia que permite que o cliente (initiator)
envie comandos SCSI para um array de armazenamento (target) via TCP/IP
Acesso aos discos remotos como se fossem unidades de armazenamento local através de cabos de rede
Pode utilizar um adaptador Pode ser emulado por sofware
Infraestrutura para BI56
iSCSI
Fonte: Adaptec
Infraestrutura para BI57
DAS, NAS e SAN
Infraestrutura para BI58
Parte I.4 – Sistemas de Arquivo
Infraestrutura para BI59
Sistemas de Arquivo Um sistema de arquivos (SA) e um conjunto de
estruturas lógicas e de rotinas, que permitem o acesso a dispositivos de armazenamento
Localização de arquivos e diretórios no disco Quais setores são utilizados para armazenar um arquivo
Infraestrutura para BI60
Sistemas de Arquivo O desempenho do SA acaba por influenciar
diretamente o desempenho de um sistema computacional como um todo
E importante conhecer o desempenho dos SAs disponíveis em um sistema operacional
Comparativo de características de Sistemas de arquivo: http://en.wikipedia.org/wiki/Comparison_of_file_systems http://wiki.novell.com/index.php/File_System_Primer
Infraestrutura para BI61
Benchmarking Sistemas de Arquivo Testes efetuados usando IOZone Ambiente Computacional
CPU: Xeon E5405 Quad, 2.00 GHz, 6144 KB de cache por core; Memória: 2GB DDR; Disco: Seagate Barracuda, 400 GB, 7200 rpm, 16 MB de
cache Sistema Operacional: Linux Debian Lenny 5.0.6 NetInst i386; IOZone: versão 3.353
SAs Testados EXT2 e EXT3 REISER BTRFS
Infraestrutura para BI62
Resultados - Escrita
Infraestrutura para BI63
Resultados - Leitura
Infraestrutura para BI64
Outros Testes - PostgreSQL
http://www.phoronix.com/scan.php?page=article&item=linux_2638_large&num=1
Infraestrutura para BI65
Sistemas de Arquivos - Considerações Testes apropriados para o ambiente
Considerar um SAN ou rede, por exemplo Desempenho nem sempre é o mais importante Levar em consideração questões como
segurança, capacidade, etc. Sistemas de Arquivo são “tunáveis”
Cache Journaling Compressão
Infraestrutura para BI66
Parte II – Backup
“S... happens...”
Infraestrutura para BI67
Backup Fundamental para organizações de qualquer
porte Geralmente não recebem a importância devida
Nem o investimento... Ideia geral:
Copiar os dados para algum lugar e recuperar se necessário
Não é tão simples como parece Como você cuida do backup dos seus dados?
Infraestrutura para BI68
Backup O backup é realizado devido a várias razões
das quais podemos destacar : requisitos de negócio proteção contra falhas de hardware recuperação a desastres proteção contra falha da aplicação proteção contra o erro do usuário atigimento de específicos níveis de serviço requisitos legais
Infraestrutura para BI69
Backup - Observações Mirroring não substitui backup
Arquivos podem ser apagados ou corrompidos Recuperações são mais comuns do que parece
Apagamento de arquivos ou diretórios (rm –rf) Problemas no RAID Otimize para a recuperação de um único arquivo
Teste a capacidade de restauração Evite a criação de backups inúteis
Cuide das mídias (fitas, discos ópticos, HDs)
Infraestrutura para BI70
Por que Back up?
Fonte: HP (http://static.highspeedbackbone.net/pdf/hp_why_backup.pdf)
Infraestrutura para BI71
Backup Qual o custo da perda de dados?
Clientes Vendas Moral (!) Imagem da empresa Tempo (e $)
Qual o custo do downtime? Sistema fora do ar Qualidade de trabalho Tempo
Infraestrutura para BI72
Backup - O que guardar? Sistema
Configurações do sistema Sofware instalado (ao menos uma lista)
Arquivos Arquivos em geral
Banco de dados Dados e configurações SGBDs possuem funcionalidades para isso
Infraestrutura para BI73
Tipos de Backup Full:
Todos os dados são copiados Server de referência para os demais Demorado
Incremental (ou cumulativo) backup de arquivos que foram alterados ou novos desde
o último backup incremental Diferencial
backup dos arquivos que foram alterados desde que foi feito um backup completo
Mais rápido
Infraestrutura para BI74
Exemplo – Backup de dados
60 GB de dados 5 GB de alterações por dia20 GB/h: velocidade de backup
dife
renc
ial
incr
emen
tal
Infraestrutura para BI75
Exemplo - Restauração
15 GB/h: velocidade de restauração2 min: manipulação da mídia (fita, no caso)Erro ocorreu na sexta, após o backup de quinta ter sido completado
E para um backup do dia 29, considerando que o backup full ocorreu dia 01?
Infraestrutura para BI76
Métodos de backup Nível de arquivos
Usa o sistema operacional para fazer o backup dos arquivos O Backup é mais longo Fácil de recuperar arquivos únicos
Nível de imagem ou bloco Backup no nível de bloco Muito rápido Dificuldade de recuperar arquivos únicos sem acesso aos
metadados Nível de aplicação
Utiliza uma aplicação específica para executar o backup
Infraestrutura para BI77
Hot Backup Realizado quando dados estão sendo atualizados,
adicionados ou lidos por seus usuários, mas não controla transações correntes
Somente o sistema de gerenciamento de banco de dados (SGBD) de recursos deve ser usado para fazer backups deste tipo
Certifique-se que os backups sejam feitos apenas durante poucas horas de trabalho
A indicação deste tipo de Backup é para ambientes onde o banco de dados precisa permanecer online 24 horas por dia e 7 dias por semana não exigem paralisação como os cold backup que são realizados off
line
Infraestrutura para BI78
Armazenamento de Backup Ambiente apropriado
Mídias limpas Temperatura adequada Identificação (Data, tipo)
Validade das mídias Armazenamento fora de sede
Incêndio ou alagamento do CPD Furto ou roubo Inabilidade de acessar as dependências principais do escritório Falha dos sistemas primários de backup Falhas da gravação ou leitura em mídias magnéticas
Backup via Rede e/ou Cloud pode ser uma alternativa
Infraestrutura para BI79
Backup Linux Backups locais
dump/restore Tar Cpio
Backup via rede rsync Bacula (http://www.bacula.org) Amanda (http://www.amanda.org/)
Infraestrutura para BI80
Backup Windows SO possui ferramenta do própria
Já foi problemático Melhorou nas últimas versões do Windows
Outras opções SyncBack (http://www.2brightsparks.com/syncback/syncback-hub.html) Cobian (http://www.educ.umu.se/~cobian/cobianbackup.htm) Acronis True Image (
http://www.acronis.com/homecomputing/products/trueimage/) Muitas outras...
Infraestrutura para BI81
Camadas de Armazenamento - Overview
1. Discos Físicos
2. SAN (Storage Area Network)
3. Hardware de RAID
4. Software RAID e Ger. Volumes
5. Sistema de Arquivos
6. Aplicações e Banco de Dados
HDs, DAS e NAS
FC, iSCSI
RAID HW, SW , níveis
SA locais e de rede (NFS, CIFS)
Infraestrutura para BI82
Parte II – Alta Disponibilidade
Infraestrutura para BI
Disponibilidade (Availability)
Disponibilidade é a probabilidade do sistema estar operacional em um instante de tempo determinado
Alternância de períodos de funcionamento e reparo Um sistema pode ser altamente disponível mesmo
apresentando períodos de inoperabilidade
Exemplos de sistemas onde alta disponibilidade é requerida: base de dados on-line servidores de rede servidores de páginas web 83
Infraestrutura para BI84
Fatores que afetam a disponibilidade Planejados
Backups Upgrade de Hardware e/ou software Manutenção Reconfiguração e realocação
Não Planejados Falhas do sistema operacional Falhas de aplicação Falhas no hardware Erros operacionais Desastres Naturais Falta de Energia Ataques (virus, invasões)
Fonte: IBM Global Services
Infraestrutura para BI85
Medidas de Disponibilidade Número de 9’s
É a medida do número de noves na expressão de percentagem de tempo de disponibilidade
Fonte: http://technet.microsoft.com/pt-br/library/cc668492.aspx
Infraestrutura para BI86
Classes de disponibilidade
Básica: 99% a 99,9%
Alta: 99,99% a 99,999%
Contínua: 100%
Depende das necessidades da organização e de suas aplicação
Infraestrutura para BI87
Implementação Redundância
Fontes Refrigeração Disco (RAID é um exemplo) Etc...
Failover Recuperação para manter o serviço no ar Recurso substitui o recurso faltoso
automaticamente Balanceamento de carga
Infraestrutura para BI88
Exemplo de servidor com TF
Exemplo de servidor TF Stratus: http://www.stratus.com/
Outras empresas também possuem servidores HA• HP• SUN• entre outras...
Infraestrutura para BI89
Clusters HA CLUSTER: Conjunto de servidores agrupados
com intenção de ganho de desempenho, disponibilidade, ou facilidade no gerenciamento
Tipos: Alta disponibilidade Balanceamento de carga Cluster de processamento paralelo
Infraestrutura para BI90
Clusters HA Intenção de manter a maior disponibilidade
possível dos serviços, através da duplicação de servidores, ambientes de rede, discos, etc
Sistema de monitoração interno no cluster garante que, no caso de falha do servidor ativo, o sistema em standby assumirá os serviços automaticamente
Linux: Heartbeat Mon DRBD
Infraestrutura para BI91
Clusters HA - Heartbeat Núcleo do ambiente de alta disponibilidade Troca de mensagens entre os servidores Gerenciamento de um IP compartilhado entre os
nodos
Infraestrutura para BI92
Clusters HA – MON O mon é utilizado para monitorar os serviços locais
da máquina e executar uma tarefa caso ocorra algum problema com o serviço monitorado
Por exemplo: monitorar o apache e caso o mesmo tenha problemas
de requisição, o mon irá derrubar o heartbeat forçando assim a máquina slave a assumir os serviços
DRBD: Consiste em um módulo para o kernel Linux que faz o
espelhamento dos dados de um dispositivo de bloco
Infraestrutura para BI93
Exemplo de aplicação Implementação de um serviço de diretórios para
autenticação de usuários OpenLDAP Heartbeat Mon DRBD
Infraestrutura para BI94
Windows Cluster
Failover Clustering in Windows Server - White paperhttp://download.microsoft.com/download/F/2/1/F2146213-4AC0-4C50-B69A-12428FF0B077/WS08%20R2%20Failover%20Clustering%20White%20Paper.doc
Infraestrutura para BI95
Parte III – Virtualização e Nuvens Computacionais
“A realidade demonstrada no relatório do Gartner traz à tona a urgência e a importância de se adotar uma nova infraestrutura e operações tecnológicas, principalmente baseadas em serviços de Cloud Computing e virtualização.” Ione de Almeida Coco - vice-presidente do Programa Executivo Gartner AL.
Infraestrutura para BI96
Virtualização Ideia não é nova: década de 60 mainframes Década de 80: PC – virtualização em desuso 30 anos depois...
Arquitetura X86 Máquinas subutilizadas
10% ou 15% em média Aumento dos custos para infraestrutura física
Muitas máquinas: manutenção difícil
Hoje: infraestrutura virtualizada máquinas virtuais Hypervisores
Infraestrutura para BI97
Virtualização
Infraestrutura para BI98
Beneficios da Virtualização Redução na quantidade de hardware físico Economia com energia e refrigeração Poupança de espaço Instalações simplificadas Facilidade para a execução de cópias de segurança Independência de Hardware Disponibilização de novos servidores virtuais (VPS) reduzida
para alguns minutos Migração de servidores para novo hardware de forma
transparente Maior disponibilidade e mais fácil recuperação de servidores Compatibilidade total com as aplicações
Infraestrutura para BI99
Soluções de Virtualização VMWare Microsoft HyperV Xen KVM
Infraestrutura para BI100
Virtualização e Computação em Nuvem Virtualização é fundamental para o conceito de
computação em Nuvem Muitos dos conceitos envolvidos na nuvem são
derivados ou utilizam conceitos de virtualização
Mas afinal... O que é a computação em Nuvem?