Mostrando entradas 1 para 10 de 12
Próximo 2 Entradas mais antigos »
Displaying posts with tag: Docker (reset)
MySQL e Dockers ... uma configuração simples

MySQL e Dockers ... não são novos conceitos, as pessoas estão se mudando para o Dockers há algum tempo. Para alguém que está apenas se movendo para isso em desenvolvimento, isso pode ter alguns obstáculos.

Enquanto o MySQL funciona bem em execução local, se você estiver testando código em diferentes versões do MySQL, é bom ter várias versões facilmente disponíveis.

Uma opção há anos, é claro, é https://mysqlsandbox.net/ de Giuseppe Maxia. Esta é uma solução muito válida para poder obter várias instâncias e testar a replicação, etc.

Dockers agora também são outro cenário frequentemente usado quando se trata de testar versões diferentes do …

[Leia mais]
Docker Compose: O que é? Para que serve? O que come?

Docker Compose é o orquestrador de containers da Docker. E como funciona um orquestrador em uma orquestra? Ele rege como uma banda deve se comportar/tocar durante uma determinada apresentação ou música.

Com o Docker Compose é a mesma coisa, mas os maestros somos nós! Nós que iremos reger esse comportamento através do arquivo chamado docker-compose, semelhante ao Dockerfile, escrito em YAML (acrônimo recursivo para YAML Ain’t Markup Language) é um formato de codificação de dados legíveis por humanos, o que torna fácil de ler e entender o que um Compose faz! Mais informações na Wikipedia.

Um exemplo prático de como funciona o Docker Compose é: imagine que temos uma aplicação Java ou PHP e que essa aplicação depende de um banco de dados MySQL e, para disponibilizar essa aplicação na internet, …

[Leia mais]
Replicação Mestre-Escravo MySQL escalável em contêineres Docker

A replicação permite que você mantenha facilmente várias cópias dos dados do MySQL. Ele é obtido através dos dados do contêiner mestre sendo copiados automaticamente para um ou mais bancos de dados escravos.

Ter seus dados armazenados em vários contêineres de banco de dados pode ser muito útil para melhorar o desempenho, executar serviços de backup, analisar informações e aliviar falhas do sistema.

Podem ser destacados os seguintes casos de uso para implementação de replicação MySQL:

  • Soluções de escalabilidade – melhorando o desempenho espalhando a carga entre vários escravos onde todas as leituras ocorrem, enquanto todas as escritas e atualizações ocorrem no banco de dados mestre
  • Backups – executando backups no escravo sem …
[Leia mais]
Dockerizando MySQL na Uber Engineering

O sistema de armazenamento Schemaless da Uber Engineering alimenta alguns dos maiores serviços da Uber, como o Mezzanine. Schemaless é um datastore escalável e altamente disponível no topo do grupo de clusters do MySQL[1]. Gerenciar esses clusters foi bastante fácil quando tínhamos 16 deles. Atualmente, temos mais de 1.000 clusters contendo mais de 4.000 servidores de banco de dados e isso requer uma classe diferente de ferramentas.

Inicialmente, todos os nossos clusters eram gerenciados pelo Puppet, um monte de scripts ad hoc e operações manuais que não podiam escalar no ritmo da Uber. Quando começamos a procurar por uma melhor maneira de gerenciar o crescente número de clusters do MySQL, tivemos alguns requisitos básicos:

[Leia mais]
Escalando o MySQL com Docker e MaxScale

Vocês já conhecem o MySQL, mas já conhecem o MaxScale e o Docker?

A necessidade de se ter um serviço que fique 100% do tempo no ar, vem se tornando cada vez maior, principalmente quando falamos de banco de dados. Ter dois servidores que funcionem como Failover para catástrofes ( MASTER e SLAVE ) já não é mais suficiente. Você precisa ter uma arquitetura que suporte a carga de acessos e atenda a todas as requisições de forma ágil.Para isso, você precisa saber escalar a sua arquitetura.

O que é Escalabilidade?

Quatro características são essenciais para atingir os altos níveis de escalabilidade que as empresas atuais requerem. São elas:

  • A habilidade de tratar grandes cargas de trabalho;
  • A habilidade de entregar altos níveis de performance;
  • A capacidade de crescer fácil e rapidamente;
[Leia mais]
Escalando o MySQL com Docker e MaxScale

Vocês já conhecem o MySQL, mas já conhecem o MaxScale e o Docker?

A necessidade de se ter um serviço que fique 100% do tempo no ar, vem se tornando cada vez maior, principalmente quando falamos de banco de dados. Ter dois servidores que funcionem como Failover para catástrofes ( MASTER e SLAVE ) já não é mais suficiente. Você precisa ter uma arquitetura que suporte a carga de acessos e atenda a todas as requisições de forma ágil.Para isso, você precisa saber escalar a sua arquitetura.

O que é Escalabilidade?

Quatro características são essenciais para atingir os altos níveis de escalabilidade que as empresas atuais requerem. São elas:

  • A habilidade de tratar grandes cargas de trabalho;
  • A habilidade de entregar altos níveis de performance;
  • A capacidade de crescer fácil e rapidamente;
[Leia mais]
Criando um Lamp com seu Docker

Bastante pessoas me pediram para criar uma documentação sobre como configurar um LAMP (Linux, Apache, Mysql e PHP) com o Docker.

Para esse artigo, usaremos o Docker e Docker-compose, mas não entremos nos detalhes básicos sobre seu uso. Caso ainda não sabia usar essas ferramentas, apresento os links abaixo para aprender as ferramentas citadas:

Para configurar um LAMP, faremos o uso de um ambiente com dois containers.

Crie uma pasta para seu projeto e dentro dessa pasta crie um arquivo docker-compose.yml com o seguinte conteúdo:

web:
image: tutum/apache-php …
[Leia mais]
Deploy ágil com Docker

Com vários projetos usando tecnologias diferentes, surgiu a necessidade de uma maneira mais ágil de organizar o deploy em produção, desses e de outros novos projetos que surgem. Uma dessas maneiras, que escolhi explicar nesse artigo, é rodar cada aplicação dentro de um contêiner. Quando fazemos isso, basta fazer uma única configuração, uma única vez, para garantir o mesmo funcionamento nas máquinas de desenvolvimento, homologação e produção. Isso permite que cada time de desenvolvimento seja responsável por decidir e gerenciar quais versões de bibliotecas e dependências seus projetos vão utilizar.

Na arquitetura abaixo, cada aplicação web roda dentro de um contêiner, expondo uma porta específica. Cada contêiner rodando uma aplicação web notifica ao serviço do etcd (que também roda dentro de um contêiner) seu próprio IP e a porta exposta. Certo? Agora vamos ao passo a passo.

Configurando o …

[Leia mais]
Conhecendo a ferramenta Docker Compose – Parte 02

Oi, pessoal!

Seguindo nossa série de artigos sobre as ferramentas do ecossistema Docker, hoje veremos um pouco mais sobre o Docker Compose, uma ferramenta que vai agilizar no deploy de seu ambiente, utilizando uma forma simples, clara e padronizada.

O Docker Compose é uma ferramenta para a criação e execução de múltiplos containers de aplicação. Com o Compose, você usar um arquivo do tipo yaml para definir como será o ambiente de sua aplicação e usando um único comando você criará e iniciará todos os serviços definidos.

O Compose é ótimo para desenvolvimento, testes e homologação, bem como para melhorar seu fluxo de integração continua. Por exemplo:

  • Em ambiente de desenvolvimento: Você pode utilizar ele para simular todo o ambiente de produção, ou seja, precisando de serviço redis, php, mysql? Basta definir isso em um arquivo .yml e quando você executar o …
[Leia mais]
Link entre containers – Parte 01

Olá, pessoal!

Hoje vou mostrar como podemos interligar containers sem precisar expor as portas do nosso host. Mapeamentos de portas não são a única maneira de conectar um container ao outro. Docker também tem um sistema de ligação que permite interligar vários containers juntos e enviar as informações de conexão de um para outro.

A importância de nomear

Para estabelecer os links, o Docker conta com os nomes dos container. Você já viu que cada container que você criar tem um nome criado automaticamente, mas você mesmo pode dar um nome ao container. Essa nomeação fornece duas funções úteis:

  1. Torna-se útil quando você precisa criar containers com funções especificas e precisa lembrar-se deles, por exemplo um container web ou mysql etc.
  2. Fica mais fácil fazer o link entre os containers, pois você não precisa decorar um nome que foi gerado …
[Leia mais]
Mostrando entradas 1 para 10 de 12
Próximo 2 Entradas mais antigos »