clicando aqui (DOC)

Propaganda
Cloud Backup for Data Base
Visão Geral do Sistema
Dokfile White Paper
Janeiro - 2014
2
Cloud Backup for Data Base
Visão Geral do Sistema
INDICE:




















www.dokfile.com/dokdbb
INTRODUÇÃO:
O QUE É O DOKDBB:
FUNCIONAMENTO:
CUSTOMIZAÇÃO:
o Customizações avançadas:
TABELA COMPARATIVA:
INFORMAÇÕES TÉCNICAS:
o Agente:
o Controller:
o Cron
o Executor:
o Exemplo de comandos utilizados:
o Mapper:
o Compressor:
o Sync
o Crypto:
ARQUIVOS DE LOG (STD-ERR E STD-LOG) E STANDERD STREAMS:
TRANSFERÊNCIA DE DADOS E TRANSAÇÃO GLOBAL:
o Processo de backup:
o Transação (Backup):
o Transação (Transferência):
o Transação (Integridade do backup):
COMPATIBILIDADE BINÁRIA:
MÓDULO OPCIONAL DE CRIPTOGRAFIA:
o Client-Side:
o Server-Side:
o Algoritmo:
PARALELIZAÇÃO:
COMUNICAÇÃO ENTRE O CONTROLADOR E O AGENTE:
o Comunicação via Sinais:
o Protocolos:
VISUALIZAÇÃO E RECUPERAÇÃO:
PLATAFORMAS SUPORTADAS:
GRANDE VOLUME DE DADOS:
FIREWALL:
CONFIGURAÇÃO:
o Agente (Cliente-Local):
o Controle (Servidor-Nuvem):
Informações sobre Criptografia Client-Side:
Informações sobre instalação (Windows):
ANOTAÇÕES:
03
04
04
04
05
06
07
07
07
07
07
08
08
08
08
08
09
10
10
10
11
11
11
12
12
12
13
13
13
14
14
14
14
15
15
15
15
15
16
16
17
[email protected]
3
Cloud Backup for Data Base
Visão Geral do Sistema
INTRODUÇÃO:
Uma recente pesquisa feita em todo o mundo por uma grande empresa
de sistemas, apontou que menos da metade das pessoas fazem cópia de
segurança de seus arquivos importantes. Com as empresas também não
é diferente, apesar de preocupadas com a segurança, mais de 40% das
empresas não possuem ferramentas de recuperação dos seus dados.
Por outro lado, apesar destes números tímidos, todos os profissionais de
TI reconhecem a grande importância de uma política de procedimentos
de backup. Muitas são as empresas que já enfrentaram o problema da
perda de importantes informações por falta de procedimentos de backup
ou por má execução destes procedimentos, o que levaram estas
empresas a perderem mais que informações importantes, como tempo,
dinheiro, e o pior, clientes.
As empresas também reconhecem que o banco de dados é um dos seus
ativos mais importantes, superando em valor até mesmo seus ativos
físicos, já que na era da informação em que vivemos, informações são o
principal negócio de qualquer companhia. Em outra importante pesquisa,
foi detectado que mais de 80% das empresas pagariam o valor do
faturamento bruto mensal para recuperar as informações do banco de
dados, caso as tivesse perdido por algum motivo.
Apesar da grande importância do backup do banco de dados, poucas
empresas possuem uma rotina sistemática e organizada para executar
esta tarefa.
Se rotinas de backup são tão importantes, porque as empresas parecem
esquecer-se disso?
Não é uma resposta simples. Procedimentos de backup de um banco de
dados quase sempre são complexos. Entre os problemas e dificuldades
que interferem na execução de uma rotina de backup, podemos
destacar:






www.dokfile.com/dokdbb
Muito esforço: fazer o backup do banco de dados é desgastante
e a intervenção manual significa administrar a maioria dos
processos em fitas ou outras mídias.
Processo lento e ineficiente: sabemos que o processo de backup
é lento e muitas vezes ineficiente, fazendo com que o
administrador e a empresa percam muito tempo com esse tipo
de rotina.
Recuperação não confiáveis: não há garantia na integridade das
informações do backup.
Alto risco: perdas de fitas e outras mídias são extremamente
comuns nos procedimentos manuais.
Alto custos: além da necessidade de profissionais técnicos
altamente capacitados, procedimentos de backup são muito
caros e muitas vezes necessitam de hardwares específicos para
sua execução.
Complexidade: os sistemas disponíveis no mercado geralmente
[email protected]
4
Cloud Backup for Data Base
Visão Geral do Sistema
são complexos e exigem especialistas para sua operação,
geralmente só possível em empresas de grande porte.
O QUE É O DOKDBB:
O Dokfile Cloud Backup for Data Base - DOKDBB é um serviço web que
permite que você inicie e gerencie agentes de backups automatizados
para bancos de dados locais, tais como Postgres, MySQL, Microsoft SQL
Server, MongoDB, Firebird ou Oracle em seu servidor Linux/UNIX ou
Windows, com persistência redundante na nuvem.
O DOKDBB não executa o backup em si, mas sim utiliza um subsistema
conhecido como executor que executa a ferramenta nativa de backup do
banco de dados, assim o backup é efetuado pela ferramenta de backup
de cada motor de bancos de dados, assegurando desta forma sua
integridade por não ser invasivo ao sistema da empresa. Isso traz uma
segurança adicional ao sistema, já que as ferramentas nativas são
largamente testadas.
O DOKDBB, além dos sistemas de bancos relacionais tradicionais,
também suporta bancos de dados NOSQL como MongoDB , CouchDB,
Cassandra ou outros sistemas de banco de dados.
FUNCIONAMENTO:
O DOKDBB possui uma arquitetura distribuída onde um agente é
instalado no hardware que hospeda o banco de dados. Este agente
possui um “cron” (agendador de tarefas com base no tempo), e utiliza
comunicação bidirecional com um “controler” (servidor de
comportamento) hospedado na nuvem. Desta forma, o DOKDBB sabe o
momento que deve efetuar o backup.
O “cron” assim que iniciado aciona um “executor” que por sua vez aceita
qualquer comando de backup, possibilitando ao administrador de banco
de dados, customizar o comando de backup conforme suas necessidades.
CUSTOMIZAÇÃO:
O administrador de banco de dados pode customizar os serviços do
DOKDBB da melhor maneira que atenda a necessidade de sua empresa.
Primeiramente o administrador tem a opção de fazer um backup de seu
banco de dados no momento que desejar, de qualquer parte do mundo,
através de um computador com acesso a Internet, através do console
web do DOKDBB.
Outra forma é pré configurar o serviço criando um comportamento
(behavior) específico para a execução do backup, como por exemplo,
executar o backup todos os dias (sete dias por semana), sempre às 23
horas. Após a configuração, o backup é tirado automaticamente e
enviado a nuvem com redundância geográfica.
www.dokfile.com/dokdbb
[email protected]
5
Cloud Backup for Data Base
Visão Geral do Sistema
Outra possibilidade é a de armazenamento dos dados (rotação), podendo
o administrador definir quais as cópias de backup deseja manter
arquivada, como por exemplo, só a última, ou as duas últimas, ou as seis
últimas, se assim achar necessário. Desta forma, quando o administrador
definir, por exemplo, as três ultimas cópias, no momento que quarta
cópia for feita, a primeira da série é automaticamente removida, e assim
por diante. Para facilitar a implementação da solução, o DOKDBB possui
quatro edições pré-configuradas (vide tabela 1).
Customizações avançadas:
O DOKDBB oferece ainda a possibilidade de locar canais de sincronismo
adicionais, tamanhos de backups maiores e até 8 conexões simultâneas
(paralelização), e ainda suporte a customizações especificas do agente
de backup. Para conhecer estas possibilidades, entre em contato com a
Dokfile.
Nota sobre conexões simultâneas:
Atenção: Caso seja utilizado mais que 1 conexões simultânea é importante
salientar que a quantidade de memória RAM do processo aumenta de acordo
com a quantidade de conexões simultâneas.
Ex: Caso seu “chunk” de dados seja no tamanho de 5MB, seu arquivo de
backup possui 20MB e você esta utilizando 2 conexões simultâneas, a
seguinte formula é aplicada para definir o tamanho de memória necessária:
(conexões simultâneas * tamanho do chunk de dados) + tamanho do processo
padrão na RAM = TOTAL DE RAM
www.dokfile.com/dokdbb
[email protected]
6
Cloud Backup for Data Base
Visão Geral do Sistema
TABELA COMPARATIVA DAS VERSÕES:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Compressão de dados
Suporte a reinício
Quantidade de processadores suportados
Paralelização envio de dados
Paralelização na compressão dos dados
Paralelização automática baseada nos processadores e núcleos físicos
disponíveis na máquina do agente (o valor é selecionado
automaticamente)
Possibilidade de rodar o backup de mais de um RDBS na mesma
máquina (ex.: fazer o backup de um banco MySQL e de um MSSQL
rodando de uma mesma máquina)
Console de administração WEB
Restauração de um backup específico (determinado ponto específico)
Suporte a Postgres
Suporte a MySQL
Suporte a MSSQL Server
Suporte a Oracle
Suporte a Mongo DB
Suporte a Fireboard SQL
Redundância global
Durabilidade de 99.999999999%
Definição da melhor hora para efetuar um backup (automaticamente)
Definição da janela de dias
Definição do número de cópias
Possibilidade de armazenamento infinito
Suporte a backup diferencial (quando fornecido pelo RDBS)
Armazenamento dos arquivos de saída (log) do processo de backup stderr e std-out
Suporte a backup incremental (quando fornecido pelo RDBS)
Backup sob demanda
Recuperação sobre demanda
Backup automático simplificado
Comportamento de backup avançado
Notificação por e-mail
Checagem da integridade do arquivo
Status de seu backup local de qualquer parte do mundo
UI de configuração Windows
UI de configuração Linux
UI de configuração UNIX
Agente suporta rodar com aplicativo, como um serviço Windows ou
como um daemon do UNIX
Suporte para Windows (agente)
Suporte para Linux (agente)
Suporte para UNIX – Solaris, aix, hpux, etc. (agente)
Possibilidade de locar um canal exclusivo de sincronismo
Conexões simultâneas (até)
Suporte a backups com até (arquivo)
Pode rodar diretamente na nuvem (Amazon, Rackspace, LocalWeb,
UOL, etc)
Suporte a customizações específicas do agente de backup (serviço
contratado à parte)
Backup (on-demand) de qualquer lugar do mundo via console Web
Recuperação do backup (on-demand) de qualquer lugar do mundo via
console Web
Número máximo de backups on-demand por mês via console Web
Número máximo de restores de backup on demand por mês via console
Web
On-demand
Automatic
Advanced
Enterprise
2
-
4
8*
2
-
4
8*
2
-
4
8*
2
-
4
8*
-
-
-
on-demand
-
-
-
on-demand
-
-
das 20h ás 5h
-
-
-
-
até 5 MB
até 5 MB
-
até 5 MB
até 5 MB
-
-
-
-
-
-
-
-
-
-
-
-
on-demand
on-demand
on-demand
on-demand
-
-
-
2
-
4
10 GB
5 GB
15 GB
8**
-
-
-
30
5
15
42
30
2
6
8
*Checagem parcial quando a Criptografia Client Side é utilizada. ** Para a versão enterprise quando contratado um canal de sincronismo adicional, o plug-in pode ser compilado com
suporte a mais de 8 threads. ●Determinado pelo canal de sincronismo adquirido e pela velocidade do link de dados do cliente.
www.dokfile.com/dokdbb
[email protected]
7
Cloud Backup for Data Base
Visão Geral do Sistema
INFORMAÇÕES TÉCNICAS:
Nesta sessão serão apresentados os principais componentes do DOKDBB e suas funções o sistema de backup.
Agente
O Agente é o principal componente do sistema, ele é quem efetua as ações de backup e sincronismo. O agente deve
ser configurado no hardware que o sistema de banco de dados esteja em funcionamento.
O agente está disponível para:


Windows (Como um serviço)
Linux (Como um daemon)
Processo de Backup
O agente sempre salvará o backup localmente, e então mapeia o arquivo de backup em chuncks de dados de 1MB5MB (pedaços). Feito isso, envia estes chuncks para nuvem. Isto é feito para alcançar paralelização do envio e para
suporte a reinicio, caso o backup necessite ser parado e reiniciado posteriormente.
Note que 100MB (meta-dados) livres além do tamanho do backup são necessários em seu HD local (podendo ser um
HD externo USB).
Controller
O ‘controller’ é disponibilizado pela Dokfile e é hospedado na nuvem. É visível (acessado) pelo cliente utilizando o
console web em: www.doksafe.com/system. Tanto o 'controller' quanto o agente trabalham de forma sincronizada e
cooperativa, para que o backup funcione ambos devem estar corretamente configurados e operantes.
Cron
É configurado dentro do agente, e desta forma é “despertado” a cada 5 minutos, checando se tem algo agendado
para fazer, assim sempre temos um intervalo de no mínimo 5 minutos entra as ações executadas pelo agente. Seu
tempo de ação pode ser configurado para mais ou menos dependendo das necessidades do cliente.
Executor
O executor é acionado pelo ‘cron’, ou via um sinal proveniente do ‘controller’ utilizando comunicação bidirecional.
Ele é responsável por enviar (executar) o comando de backup para o agente de backup de cada gerenciamento de
bancos de dados.
Exemplo de comandos utilizados:

Para o Postgres:
pg_dumpall --host localhost --port 5432 --username "postgres" --role "postgres" --no-password --verbose -file <<fileout>>

Para o SQL Server:
osql -S PC-LOCAL\\SQLEXPRESS -U sa -P 121316 -Q "BACKUP DATABASE test TO DISK='<<fileout>>'"
É importante salientar que estes comandos podem ser customizados/substituídos para atender as necessidades de
cada cliente.
www.dokfile.com/dokdbb
[email protected]
8
Cloud Backup for Data Base
Visão Geral do Sistema
Note que no lugar de saída do arquivo de ser utilizado o ‘placeholder’ <<fileout>> , assim o agente de backup pode
controlar a saída do arquivo para posterior envio para nuvem.
Nota que usuários de MySQL não devem utilizar o ‘placeholder ‘<<fileout>> na linha de comando. Veja nota abaixo
neste documento para mais informações.
Mapper
Como o arquivo de backup pode ser muito grande, é necessário um componente de mapeamento de arquivos (disco
-> memória), para que os dados possam ser tratados e preparados para transferência. O mapper é acionado pelo
agente.
Após o mapeamento é possível aplicar filtros sobre os dados, como criptografia e compressão de dados.
Compressor
O compressor é responsável por compactar o canal de dados.
O algoritmo utilizado é uma variação do LZ77.
Sync
O sync é responsável por criar a transação que envia/recupera o arquivo de backup para/da Nuvem. Ele também é
responsável por gerenciar o reinicio da operação, caso seja necessário.
Crypto
O crypto é um componente opcional, com ele é possível adicionar segurança ao seu backup.


Suporta criptografia "Client-Side" e "Server-Side";
Suporta os algoritmos: AES-128, AES-192 e AES-256.
www.dokfile.com/dokdbb
[email protected]
9
Cloud Backup for Data Base
Visão Geral do Sistema
ARQUIVOS DE LOG (STD-ERR E STD-LOG) E STANDARD STREAMS
Geralmente as ferramentas utilizadas para o backup (ex: pg_dump, osql) geram suas saídas nas “standard stream”
do sistema operacional.
O Executor do DOKDBB consegue capturar esta saída. Os seguintes arquivos são utilizados para o armazenamento:


stdout.log
stderr.log
Estes arquivos são armazenados junto com o backup na nuvem.
Segue um exemplo de um arquivo gerado pelo pg_dump (stderr.log):
pg_dumpall: executando SET search_path = pg_catalog
pg_dumpall: executando SET ROLE postgres
pg_dumpall: executando SELECT oid, rolname, rolsuper, rolinherit, rolcreaterole,
rolcreatedb, rolcanlogin, rolconnlimit, rolpassword, rolvaliduntil, rolreplication,
pg_catalog.shobj_description(oid, 'pg_authid') as rolcomment FROM pg_authid ORDER BY 2
pg_dumpall: executando SELECT provider, label FROM pg_catalog.pg_shseclabel WHERE classoid
= 'pg_authid'::pg_catalog.regclass AND objoid = 10
pg_dumpall: executando SELECT setconfig[1] FROM pg_db_role_setting WHERE setdatabase = 0
AND setrole = (SELECT oid FROM pg_authid WHERE rolname = 'postgres')
pg_dumpall: executando SELECT ur.rolname AS roleid, um.rolname AS member, a.admin_option,
ug.rolname AS grantor FROM pg_auth_members a LEFT JOIN pg_authid ur on ur.oid = a.roleid
LEFT JOIN pg_authid um on um.oid = a.member LEFT JOIN pg_authid ug on ug.oid = a.grantor
ORDER BY 1,2,3
pg_dumpall: executando SELECT oid, spcname, pg_catalog.pg_get_userbyid(spcowner) AS
spcowner, pg_catalog.pg_tablespace_location(oid), spcacl, array_to_string(spcoptions, ',
'),pg_catalog.shobj_description(oid, 'pg_tablespace') FROM pg_catalog.pg_tablespace WHERE
spcname !~ '^pg_' ORDER BY 1
pg_dumpall: executando SELECT pg_encoding_to_char(encoding), datcollate, datctype FROM
pg_database WHERE datname = 'template0'
pg_dumpall: executando SELECT datname, coalesce(rolname, (select rolname from pg_authid
where oid=(select datdba from pg_database where datname='template0'))),
pg_encoding_to_char(d.encoding), datcollate, datctype, datfrozenxid, datistemplate,
datacl, datconnlimit, (SELECT spcname FROM pg_tablespace t WHERE t.oid = d.dattablespace)
AS dattablespace FROM pg_database d LEFT JOIN pg_authid u ON (datdba = u.oid) WHERE
datallowconn ORDER BY 1
pg_dumpall: executando SELECT setconfig[1] FROM pg_db_role_setting WHERE setrole = 0 AND
setdatabase = (SELECT oid FROM pg_database WHERE datname = 'postgres');
pg_dumpall: executando SELECT setconfig[1] FROM pg_db_role_setting WHERE setrole = 0 AND
setdatabase = (SELECT oid FROM pg_database WHERE datname = 'template1');
pg_dumpall: executando SELECT setconfig[1] FROM pg_db_role_setting WHERE setrole = 0 AND
setdatabase = (SELECT oid FROM pg_database WHERE datname = 'test');
pg_dumpall: executando SELECT rolname, datname, unnest(setconfig) FROM pg_db_role_setting,
pg_authid, pg_database WHERE setrole = pg_authid.oid AND setdatabase = pg_database.oid
pg_dumpall: executando SELECT datname FROM pg_database WHERE datallowconn ORDER BY 1
pg_dumpall: copiando banco de dados "postgres"...
pg_dumpall: executando """C:/Program Files (x86)/PostgreSQL/9.2/bin/pg_dump.exe" -h
"localhost" -p "5432" -U "postgres" --role "postgres" -w -v -f
"c:\backup\pgsql\98500949-61c9-4380-afb1-8304757db4ad/backup.bkp" -Fa "dbname='postgres'"""
pg_dump: lendo esquemas
pg_dump: lendo tabelas definidas
www.dokfile.com/dokdbb
[email protected]
10
Cloud Backup for Data Base
Visão Geral do Sistema
Nota sobre o MySQL:
O MySQL mysqldump gera a saída do backup diretamente no stdout (utilizando PIPES), neste caso o stdout.log é o próprio
backup e o parâmetro <<fileout>> não deve ser informado na linha de comando ex:
mysqldump -u root -p121316 -h localhost --all-databases
Assim o DOKDBB pode identificar que um pipe é utilizado e fazer o direcionamento do stdout.log para backup.bkp
internamente.
Compare com o comando utilizado no pg_dump.exe e osql que não utiliza pipe:
mysql: "mysqldump -u root -p121316 -h localhost --all-databases" (PIPE stdout sera
redirecionado automaticamente para backup.bkp)
pgsql: "pg_dumpall --host localhost --port 5432 --username \"postgres\" --role
\"postgres\" --no-password --verbose --file <<fileout>>"
mssql: "osql -S PC-LOCAL\\SQLEXPRESS -U sa -P 121316 -Q \"BACKUP DATABASE test TO
DISK='<<fileout>>'\"",
TRANSFERÊNCIA DE DADOS E TRANSAÇÃO GLOBAL
A transferência de grandes volumes de dados entre servidores remotos geograficamente distribuídos é complexa,
assim algumas limitações são impostas para que isso seja feito de maneira correta.
IMPORTANTE: As mesmas devem ser observadas com cuidado!
Processo de backup:
O backup é feito em varias partes (transação global), podemos dividir em 3 principais:
1) Backup
--> Onde o backup é efetuado pelo executor (local)
2) Transferência
--> O arquivo local é transferido para a nuvem (local -> nuvem)
3) Integridade
--> O arquivo remoto é recomposto e sua integridade é checada (nuvem)
Transação (Backup):
O backup não é efetuado pelo DOKDBB e sim pela ferramenta de backup utilizada pelo cliente (usualmente a própria
ferramenta de backup do gerenciador de bancos de dados).
O DOKDBB apenas executa esta ferramenta conforme política do cliente.
Transação (Transferência):
O envio do arquivo de backup é considerado uma transação, não atômica, suas fases são executadas de maneira
dessincronizada (fora de ordem e tempo), porem como é uma transação, todas as fases (obrigatórias) devem ser
executadas (completadas).
www.dokfile.com/dokdbb
[email protected]
11
Cloud Backup for Data Base
Visão Geral do Sistema
Duas fases não são obrigatórias:


Sincronismo do std-err
Sincronismo do std-log
Todas as partes do sincronismo do arquivo de backup são obrigatórias.
O arquivo de backup a ser transferido pode conter vários gigabytes, assim para que a transferência de dados possa
ser feita o arquivo deve ser mapeado em chunks de dados especificados (ex 5mb). Isso pode ser definido pelo
usuário, porem, a transferência deste chunck não pode levar mais que 15 minutos. Caso isso ocorra, ocorrerá um
time-out e o arquivo não será transferido. Assim seu link da dados deve conseguir transferir o tamanho do chunk
definido no tempo Maximo de 15 minutos.
Os arquivos std-err e std-log são transferidos sem mapeamento, assim não podem levar mais que 15 minutos para
serem transferidos! Caso isso ocorra a opção sendstderr e sendstdout devem ser desativadas, para que estes
arquivos não sejam transferidos. Futuras versões do DOKDBB suportarão arquivos std-err e std-log maiores.
Transação (Integridade do backup)
Após a transação de transferência ocorrer, é feita uma checagem da integridade do arquivo de backup baseado no
match de hash. Após esta checagem o backup é marcado como feito com sucesso e a transação de backup global é
concluída (comitada).
COMPATIBILIDADE BINÁRIA
O DOKDBB utiliza um protocolo baseado em texto para suportar a compatibilidade binária, assim um overhead alto é
imposto ao protocolo principalmente a transferência de dados, assim a compactação é de fundamental importância
no protocolo e sempre deve estar ativa (salvo em poucos casos onde o processamento mínimo necessário para
compressão não é fornecido).
O principal motivo para essa abordagem é manter a compatibilidade binária do arquivo de backup, assim o
protocolo do DOKDBB pode transferir o arquivo de backup com segurança entre diferentes arquiteturas, podendo
variar entre :



OS : Windows, Mac, UNIX, LINUX
Bitness : 64 bits, 32 bits
Arch: x86, MIPS, ARM
MÓDULO OPCIONAL DE CRIPTOGRAFIA
Um módulo adicional de criptografia esta disponível com suporte a criptografia de duas formas:
Client-Side
Neste modelo o cliente fornece a chave de criptografia na fonte, o backup é então criptografado com esta chave
(que fica em poder do cliente, e é responsabilidade do cliente) e é armazenado criptografado nos servidores da
Dokfile.
Neste modelo a checagem de integridade (parte da transação global 3) não é feita, já que a Dokfile não possui a
chave de criptografia do arquivo, que fica em poder do cliente, a Dokfile não pode decriptografar e checar o arquivo,
sendo assim a checagem de integridade é mais fraca.
www.dokfile.com/dokdbb
[email protected]
12
Cloud Backup for Data Base
Visão Geral do Sistema
Vantagens:

Nível de Segurança muito elevado.
Desvantagens:




Gerenciamento da chave é responsabilidade do cliente;
Processamento da maquina local é muito utilizado para criptografia;
O arquivo a ser transferido pode ficar 4x maior (dependendo do tipo de banco de dados);(*)
Checagem fina da estrutura do arquivo não é possível (transação global).
(*) O arquivo criptografado é convertido em base 64 para facilitar a transferência pela internet aumentando seu tamanho! Neste
caso é indicado utilizar chunks de dados de 1MB.
IMPORTANTE: Utilizar a compressão de dados neste caso é fundamental!
Nível de Segurança:

Muito elevado
Server-Side
É o oposto de 'Client-side encryption' onde as chaves ficam em poder da Dokfile. Neste modelo a chave é gerada e
armazenada em um servidor de chaves seguro na própria infraestrutura da Dokfile. Nesta configuração todo
gerenciamento das chaves criptográficas e ferramentas relacionadas necessárias são feitos pela Dokfile.
Neste caso a Dokfile pode checar o arquivo e efetuar uma validação de integridade mais forte.
Geração de Chaves
Os dados são criptografados com uma chave simétrica única de 256 bits criada pela Dokfile para a o cliente. A chave
é gerada utilizando bits randômicos, com base na tabela ASCII, possibilitando 1.8*10^19 possibilidades, evitando
assim por completo ataques por dicionário ao sistema.
A Chave é hospedada em um arquivo criptografado no servidor de Chaves da Dokfile com uma "Pass Phase" que
deve ser informada em sua inicialização pelo Diretor de tecnologia da Dokfile. Uma carta com a chave impressa é
fornecida para o cliente.
A comunicação (session) entre o servidor de chaves da Dokfile e o servidor de encriptação é feita via seção segura
utilizando infraestrutura de chaves PKI (SSL).
Vantagens:



Gerenciamento da chave não é responsabilidade do cliente;
Processamento da maquina local não é utilizado, a criptografia é feita nos servidores da Dokfile;
Checagem fina da estrutura do arquivo é possível (transação global).
Desvantagens:

Nível de segurança menor em comparação com o cliente-side
Nível de Segurança:

Elevado
www.dokfile.com/dokdbb
[email protected]
13
Cloud Backup for Data Base
Visão Geral do Sistema
Algoritmo
O algoritmo criptográfico para a proteção dos dados pode ser:



AES-128 - Advanced Encryption Standard (AES-128);
AES-192 - Advanced Encryption Standard (AES-192);
AES-256 - Advanced Encryption Standard (AES-256).
IMPORTANTE: o AES-256 é um dos mais fortes algoritmos de criptografia em blocos disponíveis atualmente.
PARALELIZAÇÃO
O suporte a paralelização é nativo nos produtos da Dokfile. No caso do cliente, é disponível dependendo do produto
o suporte a X processadores.
O método de paralelismo utilizado é o de memória compartilhada, assim tarefas que exigem grande poder de
processamento, como criptografia, compressão de dados e manipulação dos dados, podem ser paralelizadas em até
X processadores. As conexões também podem ser paralelizadas para uma transferência de dados mais eficiente.
COMUNICAÇÃO ENTRE O CONTROLADOR E O AGENTE
Dois métodos de comunicação são implementados no Dokfile Cloud Backup.
Comunicação bidirecional
Geralmente iniciada pelo agente para atualizações no controlador. Este tipo de conexão ocorre em segundos, já que
sistema da Dokfile tem um servidor para tratar este tido de comunicação.
Comunicação via Sinais
Geralmente iniciado pelo controlador para o agente. Este tipo de conexão é mais lenta, podendo demorar minutos.
Quando um sinal é enviado para o agente, ele fica buferizado, não é tratado imediatamente. Isso é feito para evitar
consumo excessivo de recursos da maquina cliente. Assim de tempos em tempos o agente recupera os sinais do
buffer e executa a ação necessária. Este tipo de comunicação ocorre quando por exemplo, o usuário requisita na
console web para um backup ser feito ou ser recuperado.
MPORTANTE: Um sinal nunca interrompe uma ação em execução pelo agente (já iniciada pelo agente).
Ex: Se você desabilitar o controle e o agente estiver fazendo um backup, primeiramente ele irá terminar o backup, e só então se
desativar. Caso você queira forçar o termino, você terá que efetuar um flush no buffer do agente.
Para fazer isso é muito simples, apenas reinicie o agente. Assim o buffer será recriado.
Protocolos
Os canais utilizados são TCP/IP com suporte a SSL port 433 (protocolo HTTP) e 9912 (protocolo Dokfile Hades
Archive), 9623 Log (opcional).
www.dokfile.com/dokdbb
[email protected]
14
Cloud Backup for Data Base
Visão Geral do Sistema
VISUALIZAÇÃO E RECUPERAÇÃO
O agente de backup utiliza comunicação bidirecional com o servidor do Dokfile, proporcionando uma visão de tudo o
que esta ocorrendo em real-time diretamente no site da Dokfile.
A recuperação é iniciada pelo console web. Utilizando um assistente local você pode indicar onde o arquivo
recuperado deve ser salvo, para posterior restauração no sistema de banco de dados, que deve ser feita pelo seu
administrador de banco de dados, ou contratada por técnicos da Dokfile.
PLATAFORMAS SUPORTADAS
O DokDBB oferece suporte aos seguintes sistemas de banco de dados:






Postgres
Firebird
MySQL
SQL Server
MongoDB (Enterprise : on-demand)
Oracle (Enterprise : on-demand)
GRANDES VOLUMES DE DADOS
O DOKDBB não é indicado para a armazenagem de grande volume de dados (TERABYTES), neste caso uma
arquitetura especifica deve ser desenvolvida, e inúmeros fatores devem ser considerados. Se esse é seu caso entre
em contato para saber como podemos ajuda-lo.
FIREWALL
Para o DOKDBB funcionar é necessário abrir (permitir o trafego de informações) a porta TCP: 9912
Caso o cliente deseja utilizar o log remoto* (opcional) é necessário abrir (permitir o trafego de informações) a porta
TCP: 9623
O log remoto permite a Dokfile identificar problemas no funcionamento do seu backup.
CONFIGURAÇÃO
O agente e o controlador funcionam de maneira integrada e cooperativa, assim, para que o DOKDBB funcione
corretamente, ambos devem estar configurados corretamente.
Temos 2 tipos de configuração, a do agente (que é armazenada localmente em um arquivo de configuração,
podendo ter um cache remoto) e a do controle que é armazenada diretamente nos servidores da Dokfile na nuvem.
Caso tenha duvidas entre em contato com a Dokfile para que possamos ajuda-lo.
www.dokfile.com/dokdbb
[email protected]
15
Cloud Backup for Data Base
Visão Geral do Sistema
Agente (Cliente - Local)
Requisitos:
1) O Agente deve estar instalado.
2) O ‘controller’ deve já ter sido configurado pela Dokfile e você deve ter a chave de acesso parecido com esta
abaixo:
AB123654789F01234560AB123654789F01234560
Para configurar o agente você deve executar o painel de controle "Dokfile Cloud Backup For Data Base" do Windows.
O primeiro passo é fazer o "bind", ou seja você deve entrar com a chave de acesso assim que requisitado pelo painel
de controle. Após este passo o agente irá entrar em contato com o ‘Controller’ e então apresentar as opções de
configuração para você possa escolher.
Controle (Servidor - Nuvem)
O ‘Controller’ inicialmente é configurado pela Dokfile. Dependendo do produto adquirido você pode configurar
varias propriedades do ’controller’ diretamente no console web.
Informações sobre Criptografia client-side
A criptografia client-side é definida pela configuração corrente do agente! Assim você deve ficar consciente que se
você mudar a chave você poderá ter problemas na recuperação, de backups criptografados com chaves diferentes
em momentos diferentes. Exemplo:
Dia 14/08 você esta usando a chave1 e então um backup é feito, assim temos:
14/08 BACKUP:01 CHAVE:01
No mês seguinte você altera seu agente para usar a chave2, então:
14/09 BACKUP:02 CHAVE:02
Neste caso você necessita recuperar o backup BACKUP:01, porem o agente agora esta configurado com a chave2.
NESTE CARO A RECUPERACAO IRÁ FALHAR E A SEGUINTE MENSSAGEM SERA LOGADA NO LOG:
Chaves com erros, você esta tentando recuperar um backup que foi criptografado com outra chave diferente da
configurada no agente. Configure a chave correta e tente novamente.
Para resolver o problema você deve reconfigurar o agente com a chave1 antes de recuperar o backup, e então voltar
para a chave2.
ISSO PODE SER EXTREMAMENTE COMPLEXO, POR ESSE MOTIVO A DOKFILE FORNECE SERVER-SIDE ONDE O
CONTROLE DE CHAVES É TRANSPARENTE.
No caso de você necessitar usar client-side, você deve fazer um controle utilizando os campos de comentário no
console web fazendo um mapeamento de que chave foi utilizada em cada backup, anotando as chaves em um papel
e indicando com o mapeamento no campo de comentário. Consulte a Dokfile sobre a melhor abordagem de
criptografia para o seu negócio, pois é um tema altamente complexo.
www.dokfile.com/dokdbb
[email protected]
16
Cloud Backup for Data Base
Visão Geral do Sistema
Atenção: a mudança entre os tipos de criptografia deve ser feita com cautela, já que a mudança de cliet-side para
server-side, faz com que os backups cliet-side não possam ser recuperados pelo mesmo agente.
Geralmente este erro é reportado, quando você tenta recuperar um arquivo criptografado em modo client-side em
um agente não configurado em modo client-side, ou configurado com as chaves erradas.
zlib error
Informações sobre instalação (windows)
Para Windows Server 2008 R2 Server o WoW64 deve ser instalado, já que o DOKDBB é 32bits
www.dokfile.com/dokdbb
[email protected]
17
Cloud Backup for Data Base
Visão Geral do Sistema
ANOTAÇÕES:
www.dokfile.com/dokdbb
[email protected]
18
Cloud Backup for Data Base
Visão Geral do Sistema
ANOTAÇÕES:
www.dokfile.com/dokdbb
[email protected]
19
Cloud Backup for Data Base
Renato Tegon Forti
Ricardo Tegon Forti
Renato Tegon Forti
www.dokfile.com/dokdbb
Visão Geral do Sistema
16/06/2013 ddmmyyyy
06/01/2014 ddmmyyyy
07/01/2014 ddmmyyyy
Initial Release
Revision
Revision
[email protected]
20
Cloud Backup for Data Base
Visão Geral do Sistema
Administrativo:
Av. Campos Salles, 272
Americana - SP 13465-590
Tel: +55 19 3645.9994
Desenvolvimento:
Av. Nossa Sra. De Fátima, 291
Vila Israel - 1º Andar - Sala 1 CEP 13478-540
Americana / SP TEL: +55 19 3645-9991
[email protected]
www.dokfile.com
www.dokfile.com/dokdbb
[email protected]
Download