Author: Gustavo Biondo

[Fast Tips] – Azure, tem jeito certo de desligar uma VM ?

[Fast Tips] – Azure, tem jeito certo de desligar uma VM ?

Essa semana o Fast Tips vai falar sobre os diferentes tipos de desligamento das VMs na azure.

Quando acessamos uma VM via, RDP, SSH ou qualquer outro client de conexão remota e enviamos o comando de desligar o SO ele não necessariamente está desalocando o hardware de processamento, memória e network e sim está apenas desligando o SO.

Quando isso acontece podemos identificar pelo próprio Status ( Stopped ) mostrado no console da Azure. Esse status quer dizer que o dono da conta continua pagando pelo hardware alocado.

Diferentemente da AWS é necessário parar a máquina via console para que ela realmente desaloque o hardware contratado e pare de gerar custos.

Quando o Status no painel mostrar Stopped (deallocated) a maquina não ira mais gerar custos.

Para você que é um “Administrador” da Azure ou está brincando um pouquinho com a cloud da Microsoft, nunca esqueça de checar se suas maquinas estão realmente desligadas sem gerar custos!

Conceitos básicos de Elasticsearch

Conceitos básicos de Elasticsearch

Essa semana vamos falar um pouco sobre Elasticsearch explicando o que ele é e seus termos básicos.

O Elasticsearch é um banco de dados não relacional open source baseado no Apache Lucene, uma engine de busca muito conhecida no mercado. Com uma estrutra de documentos em JSON e controlado através de métodos HTTP o Elasticsearch se torna cada vez mais poderoso quando necessitamos armazenar e analizar grande quantidade de dados em real time.

Quando lidamos com grandes quantidades de dados precisamos tomar alguns cuidados para que ao invés de facilitar a gerência de dados o Elasticsearch não acabe se tornando um grande problema. Para isso sua clusterização é imprescindível para qualquer arquitetura que mexa com dados não voláteis, necessite alta disponibilidade e escalabilidade.

Agora que já entendemos um pouco sobre o que é o Elasticsearch vamos descomplicar alguns de seus componentes/termos principais.

Cluster: Um conjunto de máquinas que podem ser chamadas através de um único endPoint e compartilham dados, processamento, memória e outros recursos;

Nodes: É o nome que se dá para as maquinas que compõem o cluster;

Shards & Replicas: Com o intuito de acelerar buscas, balancear a quantidade de dados e garantir a alta disponibilidade entre os nós, o Elasticsearch divide cada índice em vários conjuntos de dados menores. Em um índice com configuração padrão há sempre 5 shards primários e uma réplica de cada totalizando 10 shards.

Index: Os índices fazem o mesmo papel dos Databases em um banco relacional, ou seja, é um grande conjunto de dados que respeitam um padrão pré estabelecido.

Type: É a semântica padrão definida por quem cria o index, se assemelha com os tabelas de um banco relacional.

Documents: São arquivos JSON inseridos em um index respeitando os padrões definidos pelo type.

Agora que já entendeu os conceitos básicos do Elasticsearch aguarde pelos próximos posts que iremos fazer mostrando como subir e configurar um cluster, comandos básicos, diferentes tipos de configurações de um cluster e muito mais.

Até a próxima!

[Fast Tips] Ansible – Validando os Playbook’s antes de executar!

[Fast Tips] Ansible – Validando os Playbook’s antes de executar!

No Fast Tips dessa semana vamos passar uma dica para quem está começando a escrever seus playbooks com Ansible e não sabem como validar quais alterações serão feitas na máquina depois de editar ou criar uma role.

É muito comum hoje em dia depois de fazermos uma alteração em alguma role do Ansible testarmos e validarmos o que a alteração realmente vai modificar no host escolhido e para isso muitas vezes subimos uma outra máquina com as alterações, o que pode gerar custos elevados no final do mês.

Ao invés de subir outra máquinas com as atualizações ou utilizar o Vagrant para validar as alterações, podemos utilizar dois parâmetros que são pouco utilizados no Ansible, mas tem grande valor:

Esse primeiro parâmetro – -check funciona como DryRun na execução do playbook, ou seja, ele simula a execução de todas as roles contidas no playbook no host de destino. Assim conseguimos saber quais tasks modificarão o host de destino e quais tasks não modificarão.

Já o parâmetro – -diff, diferentemente do – -check, não funciona como DryRun, e sim apenas mostra quais são as modificações feitas no host em que o playbook será executado de forma detalhada, ou seja, caso tenha alterado algum arquivo ele mostrará as linhas modificadas, enquanto com o – -check só seria mostrado que há uma alteração para ser feita em determinado arquivo.

Dica: Esses dois parâmetros se tornam ainda mais interessantes quando usados em conjunto!

Façam os testes e deixem nos comentários o que acharam do Fast Tips da semana!

[Fast Tips] AWS – Utilizando as Tags de maneira criativa

[Fast Tips] AWS – Utilizando as Tags de maneira criativa

Nesse post vamos abordar uma funcionalidade muito importante da AWS e que muitas vezes é pouco explorada pelos administradores da nuvem! TAGS

As tags da AWS estão lá não apenas para dar o nome para os recursos de cada serviço como na parte de EC2 que temos a Tag Name para nomear cada instância criada. As tags tem o papel de organizar, descrever e até otimizar a administração dos recursos.

A seguir você vai ver algumas funcionalidades que as tags podem proporcionar:

  1. Criar uma tag Environment e aplicá-la em todos os serviços que possuem esse recurso pode ser uma das maneiras de segregação de ambientes como Homologação e Produção, o que pode facilitar em uma busca rápida no painel de Instances do EC2 ou até mesmo auxiliar na hora de visualizar o custo por ambiente na área de billing.
  2. Tags para executar rotinas em determinados recursos como desligar o ambiente de homologação durante a madrugada para diminuir o custo. Ou seja todos os recursos que possuem a tag desligar serão atingidos por uma rotina de stop/start.
  3. Até na hora de criar um ambiente de deploy blue/green é possível utilizar as tags para controlar qual stack está ativa e qual stack não está: Stack: ON Stack: OFF

Essas são só algumas implementações possíveis usando as tags da AWS, você pode optar por usá-las da forma que preferir, criatividade é tudo!

Compartilhe conosco outros exemplos em que o uso das tags da AWS foi usado de forma criativa inteligente!