Como exemplo, irei mostrar como configurar um ambiente para rodar WordPress, porém o procedimento para a configuração do ambiente funciona da mesma maneira para qualquer aplicação que você vá subir.
Neste ambiente iremos configurar um servidor web Apache e um servidor de banco de dados MySQL, configurar FTP, certificado SSL, escalabilidade automática e se aprofundar em alguns recursos de extrema importância da plataforma, que ajudarão o profissional a gerenciar toda a infraestrutura da sua aplicação.
Criar o Ambiente
Clique em Criar Ambiente.
Irá abrir uma janela cujo topo contém as linguagens que temos a possibilidade de trabalhar. Em nosso exemplo iremos trabalhar com PHP.
Feita a escolha, percebemos que a janela de configuração do ambiente é dividida em 3 partes.
A primeira, podemos dizer que é uma topologia, onde você pode escolher por ativar ou desativar recursos do ambiente como, balanceamento de carga, servidor web, servidor de banco de dados, cache, storage e VDS.
Na segunda você pode realizar a configuração de escalabilidade do seu servidor, quantidade de cloudlets, quantidade de nós e também há a opção de atribuir um IPv4 publico àquele recurso.
A terceira área possui uma estimativa de valores cobrados em seu ambiente, por hora, dia e mês. Muito útil para ter uma noção do quanto você irá gastar com ambiente. É importante lembrar que esses valores não são fixos, e podem haver variações devido aos gastos com armazenamento, rede, escalabilidade etc. Mas geralmente, no final do mês, o valor não foge muito do que é mostrado ali.
Servidor Web
Como vamos trabalhar com PHP, temos duas opções de servidores web: Apache e Nginx. Irei realizar a escolha do Apache em nosso exemplo.
Ele também dá opção de escolher a versão do PHP a ser instalada. Vou escolher a última (PHP 7).
Nas opções de escalabilidade, irei reservar 5 cloudlets, e deixar como limite de escalabilidade (cloudlets dinâmicos) até 15 cloudlets. Por enquanto, não se preocupe com escalabilidade horizontal, deixe somente 1 Nó ativado para o servidor web.
Ative também o endereço de IPv4 público, habilitando este recurso, o ambiente provisiona um IP para o servidor Apache, dando-lhe a possibilidade de realizar o apontamento do domínio para o servidor e configurar o FTP do mesmo . Você só consegue realizar ativação desta opção, na versão paga do Jelastic, pois a versão de teste não permite ativar o IPv4.
Servidor de Banco de Dados
Ativando a opção SQL, ele dará uma lista de servidores de banco de dados relacionais. Vamos trabalhar com MySQL 5.7.
Em relação ao setup das configurações de escalabilidade, iremos deixar neste momento idêntico ao do servidor web, 5 Cloudlets reservados e 15 cloudlets dinâmicos, somente com 1 Nó.
Finalizando
Feitas estas configurações básicas, você pode clicar em Criar Ambiente, e o Jelastic começará o processo de instalação. Este processo não leva muitos minutos. De qualquer maneira, no momento que for finalizada, você receberá dois e-mails da plataforma.
O primeiro informando que a instalação foi concluída com sucesso, e o segundo informando que o MySQL foi adicionado em seu ambiente. Assim, você também receberá as informações para acesso ao servidor de banco de dados.
- Endereço: onde você possui acesso ao phpMyAdmin do seu servidor MySQL para realizar administração do mesmo;
- Usuário e Senha: são gerado automaticamente.
Após a conclusão da instalação, temos a possibilidade de expandir o ambiente e ter algumas informações sobre o mesmo.
Como por Exemplo:
- Lista de Servidores em Funcionamento;
- Opções de add-ons (uma espécie de instalador de serviços), reinício do servidor, configurações, logs e estatísticas;
- Porcentagem de utilização do disco;
- Situação dos cloudlets em uso.
Durante a configuração do ambiente, exploraremos cada opção em mais detalhes, mas no momento iremos focar na configuração do ambiente. Sendo assim, ao passar o mouse por cima do Nó do Apache, iremos ter uma engrenagem, onde irá exibir dois IPs, o IP privado, e o IP público que foi ativado no momento da criação de nosso ambiente.
Será com esse IP que você realizará o apontamento do seu domínio para o ambiente criado.
Configurando o Domínio
Para realizar o apontamento do seu domínio para o Jelastic Cloud com o IPv4 público, basta criar uma entrada do tipo A, informando o IP que foi gerado, e uma entrada do tipo CNAME apontando para o seu próprio domínio. Para realizar esse procedimento no Registro.br, basta acessar o seu painel, clicar no domínio que deseja fazer o apontamento e depois em Editar Zona.
Depois em Nova entrada.
Iremos criar primeiro a entrada do tipo A, informando o IP fornecido pelo ambiente do Jelastic, e depois em Adicionar para criar a entrada.
Em seguida, clique novamente em Nova entrada, só que agora iremos criar a entrada CNAME, informando no primeiro campo de subdomínio o valor www, e no campo Nome do servidor pode ser digitado o próprio domínio, que no exemplo é luizduarte.com.br.
Criadas essas duas entradas, basta salvar e, dentro de algumas horas, o seu domínio já estará apontando para o ambiente criado do Jelastic. Lembrando que só é possível utilizar o painel da Registro.br para realizar a criação das entradas, se os Servidores DNS utilizados em seu domínio forem da própria Registro.br. Caso contrário, você deverá utilizar o painel de onde você comprou o domínio ou que apontou os Servidores DNS.
A segunda etapa desta configuração, é adicionar o seu domínio à área de Domínios Especiais do Jelastic, vinculando o seu domínio ao ambiente criado. Para realizar este procedimento basta clicar em Configurações, em seu ambiente.
Em seguida, em Domínios especiais, vai se abrir uma área onde você terá um campo para adicionar os domínios desejados.
Configuração FTP
Como tudo no Jelastic, a configuração do FTP não é algo difícil de ser realizada. Clique em Add-ons (Segundo item que aparece ao passarmos o mouse por cima da linha do Apache).
E escolha instalar FTP.
Uma janela será exibida explicando um pouco sobre o protocolo FTP. A mesma tela mostra os requisitos para realizar a instalação do protocolo, que é o Endereço IPv4 público. No ambiente configurado que temos, o IPv4 público já se encontra ativado, por isso basta clicar em instalar.
Começa então o processo de instalação. Assim que ele for finalizado, você receberá um e-mail com as informações de acesso ao FTP, sendo:
- Link de FTP (Endereço);
- Login;
- Senha (Gerada automaticamente);
- Public IP (IP reservado anteriormente);
Obs: Caso deseje realizar alteração da senha do FTP, basta realizar o mesmo caminho para instalação, porem, clique no menu à direita do FTP e selecione o item Resetar senha. Uma nova senha será gerada e enviada por e-mail.
Acessando e Gerenciando Banco de Dados
Há duas possibilidades de acesso ao banco de dados MySQL no Jelastic: local e remoto.
Acesso Local
Podemos considerar para este exemplo o acesso local, já que o servidor de banco de dados que configuramos até o momento não possui IPv4 público e não está devidamente configurado para realizar acessos remotos. Sendo assim, a única possibilidade de acesso e gerenciamento do mesmo será através do endereço enviado por e-mail ao concluir a instalação do ambiente.
Este endereço lhe redireciona para o phpMyAdmin do ambiente, onde, utilizando um usuário e senha (também enviado por e-mail ao concluir a instalação do ambiente), você consegue criar e gerenciar os bancos de dados.
Acesso Remoto
O acesso remoto de um banco de dados ocorre quando há possibilidade de acessar determinado banco fora do ambiente (servidor).
Por exemplo, quando conseguimos realizar o acesso através de um Client MySQL instalado no desktop, como Workbench ou HeidiSQL, através de acesso SSH, ou ainda quando mantemos nossa aplicação em um servidor fora do ambiente Jelastic. Mantendo, assim, somente o servidor de banco de dados no ambiente Jelastic, enquanto toda aplicação pode estar em um servidor secundário, em qualquer outro host.
Para que possamos realizar um acesso remoto ao nosso servidor de banco de dados no Jelastic, é necessário habilitar o IPv4 público, da mesma maneira que foi habilitado no Servidor Web.
Para realizar esse procedimento, basta clicar em Alterar a topologia do ambiente.
Em seguida clicar em MySQL, alterar a chave do Endereço IPv4 público, de OFF para ON e aplicar.
Após a alteração ser realizada com sucesso, podemos obter o endereço de IP do servidor de banco de dados clicando no Adicionalmente em cima do ID do nó do banco de dados, da mesma maneira que obtemos o IP do servidor web.
Com isso, já é possível gerenciar os bancos de dados remotamente. Esse não é um recurso obrigatório para o funcionamento da aplicação, caso a aplicação esteja hospedada em um servidor web no mesmo ambiente do banco de dados, você pode optar por economizar um IPv4, realizando o gerenciamento do banco através do phpMyAdmin, pelo navegador, no endereço enviado por e-mail após a conclusão da instalação do ambiente.
Alteração de senha servidor banco de dados
Alterar a senha do banco de dados não é algo muito interessante, muito menos quando a aplicação já se encontra em produção. Isso porque teremos que alterar a senha no arquivo de conexão da aplicação também, e a aplicação ficará fora do ar até que realize esta mudança.
Mas sabemos que estamos sujeitos ao esquecimento da senha ou termos que trocá-la por qualquer outro motivo. Sendo assim, para alterá-la, basta clicar em Adicionalmente sobre o servidor MySQL e Redefinir senha.
Uma janela será exibida para confirmar a alteração. A senha será alterada e enviada para o e-mail cadastrado.
Instalação SSL
O Certificado SSL é de extrema importância, por exemplo, para segurança das informações do usuário, ranqueamento do site em buscas, e outros. Somente com esses dois itens já são motivos suficientes para realizar a instalação de um certificado SSL em seu site.
Existem diversas empresas que fornecem certificado digital caso ainda não possua. No Jelastic Cloud você pode realizar a configuração do seu certificado da seguinte maneira.
SSL Jelastic
O Jelastic dispõe de um certificado próprio gratuito, de fácil ativação, porém não vejo muita utilidade, a não ser em ambientes de teste. Isso porque o certificado do Jelastic só funcionará em ambientes que não possuem IPv4 publico ativo, ou domínio personalizado configurado. Ou seja, este certificado só funciona com o endereço do provedor, como nomedoambiente.jelasticlw.com.br (caso esteja utilizando a Locaweb) ou nomedaapp.jelastic.websolute.net.br (caso esteja utilizando Websolute).
Para ativar este certificado, basta clicar em Alterar topologia do ambiente.
No topo da topologia, clique em SSL.
Feito isso, basta ativar o SSL do Jelastic.
SSL Customizado
O SSL customizado, trata-se do SSL que você comprou com alguma empresa certificadora de sua escolha. Para realizar a configuração deste tipo de certificado no Jelastic, basta clicar em Configurações, sobre seu ambiente.
E depois em SSL Customizado.
Você terá que enviar 3 arquivos: Chave do Servidor, Certificação Intermediária(CA) e Certificação de Domínio. Esses arquivos são enviados pela certificadora que você escolheu, após a compra do certificado SSL.
Após enviar os 3 arquivos, basta clicar em Salvar e o processo de instalação começa. Finalizado o processo, uma barra verde vai aparecer acima, onde você poderá habilitar ou desabilitar o certificado, caso necessário.
SSL Let’s Encrypt
Outra saída para manter seu site protegido com criptografia SSL, e de forma gratuita, é utilizando o Let’s Encrypt. O Jelastic traz mais essa facilidade no Add-ons, e com alguns cliques você consegue gerar e configurar um certificado para o seu domínio.
Um detalhe importante que precisa ser levado em consideração antes da configuração desse certificado, é que o domínio deve estar apontado para o seu ambiente Jelastic via CNAME ou A Record, e o domínio também deve estar associado ao seu ambiente através dos Domínios especiais, nas configurações do ambiente, como explicamos anteriormente. Isso porque o Let’s Encrypt faz a validação do domínio para verificar se o ambiente onde está sendo realizada a instalação possui realmente autoridade sobre o domínio, evitando assim possíveis fraudes. (Lembrando que o IPv4 em seu ambiente web deve estar on).
Portanto, estando o domínio vinculado ao ambiente e apontado para o mesmo, pode-se iniciar o processo de instalação do certificado SSL Let’s Encrypt.
Para começar a instalação do Let’s Encrypt, clique em Add-ons, acima do Apache.
Depois em Instalar, em Let’s Encrypt Free SSL.
Aparecerá uma janela onde você terá que escolher como deseja instalar o certificado.
Interal Domain: O subdominio do host criado com o nome do seu ambiente, terminando com .jelasticlw.com.br (caso esteja utilizando a Locaweb) ou .jelastic.websolute.net.br (caso esteja utilizando Websolute).
Custom Domain: Domínio que você comprou em algum hosting ou na própria RegistroBR.
Seguiremos a instalação do Custom Domain. No campo Domains, você terá que inserir todos os domínios ou subdomínios que deseja utilizar com certificado SSL, separados com espaço.
Preenchido o campo, basta clicar em Instalar. O processo pode levar alguns minutos, pois, apesar de ser simples, não é algo tão rápido.
No final da instalação, aparecerá uma janela informando que a instalação foi concluída com sucesso, junto com um detalhe muito importante: o certificado é válido somente por 90 dias. Porém, 15 dias antes de vencer o prazo de validade do certificado, você receberá um e-mail informando sobre a data de vencimento e lembrando sobre a renovação.
Sendo assim, para renovar o certificado SSL, você terá que acessar o painel do Jelastic, novamente em Add-ons (mesmo caminho para realizar a instalação) e clicar em update.
Após a instalação concluída, ou update, você poderá verificar se o certificado foi instalado corretamente e a data de validade do mesmo, nas configurações do ambiente.
Clique em configurações.
Depois em SSL Customizado.
Nesta tela, você obtém informações sobre o certificado, se ele está configurado corretamente e sua data validade, que, nesse caso, vence em 25/05/2017.
Escalonamento Horizontal Automático
Conforme explicamos no primeiro artigo sobre Jelastic, escalonamento horizontal é a multiplicação das máquinas previamente configuradas. No Jelastic, é possível fazer esse escalonamento de forma inteligente e automática. Iremos configurar o ambiente para suportar uma determinada porcentagem da utilização dos recursos, e com o passar do tempo, caso determinado recurso não tenha baixado sua porcentagem de utilização, uma segunda máquina começa a funcionar, até a quantidade de requisições baixar.
Para configurar este recurso clique em Configurações no ambiente.
Em seguida clique em Escalabilidade Horizontal Automática.
Clicando em Adicionar, veremos o painel onde criamos as regras para a escalabilidade.
Na barra superior estão listados todos os servidores ou recursos ativos do ambiente. Neste exemplo, somente Apache e MySQL. Vamos seguir com Apache, porém a configuração é a mesma para todos os outros.
Falando ainda sobre a barra superior, temos CPU, Memória, Rede, I/O de disco e IOPS de disco, ou seja, temos a possibilidade de criar regras para cada um desses recursos separadamente, deixando o ambiente redundante e confiável.
No restante do painel, podemos ver dois gráficos, que podem ser ativados ou desativados. Também podemos manipular a barra de porcentagem. É com esta barra que você escolhe o percentual de uso ou desuso de um determinado recurso, para que um Nó seja adicionado ou removido de seu ambiente.
Adicionar Nós (Barra laranja): Pode ser arrastado de 20% (valor mínimo) até 100%.
Remover Nós (Barra azul): Pode ser arrastado de 0 a 100%.
Como exemplo, irei criar uma regra para o uso de processamento do Apache. Sendo assim, ativaremos ambas as barras e decidiremos os valores, tendo em mente que não queremos que nosso servidor atinja os 100% de processamento, já que essa porcentagem com certeza vai gerar problemas de lentidão, possíveis travamentos, entre outros fatores. Decidimos então que ao atingir 90% de processamento, um Nó será adicionado.
Já para remover o Nó, podemos deixar em 40%. Isso quer dizer que, depois do pico de acesso, após baixar para menos de 40% de seu processamento, o Nó será removido.
Nos campos da lateral esquerda você pode refinar a regra.
Sempre que a carga é maior que: Configura o valor em porcentagem de utilização de processamento, memória ou qualquer outro recurso, antes de adicionar ou remover algum Nó (oque já foi feito com as barras a direita).
Por pelo menos: tempo que o servidor tem que manter o limite pré configurado antes da regra ser executado, ou seja, se o processamento do servidor Apache ficar por mais de 5 minutos acima dos 90%, ira executar a regra de adicionar 1 Nó adicional.
Aumentar para: Limites de Nós a serem aumentados. Se, mesmo com 1 Nó adicional, o processamento atingir novamente os 90%, será adicionado mais 1 Nó, até o limite de Nós configurado neste campo. Isso significa que, se o limite for 5, e estiverem os 5 Nós ativos, e ainda assim o processamento dos servidores Apache estiverem acima dos 90%, nenhum novo Nó será adicionado.
Por: Quantidade de Nós a serem ativados toda vez que a regra for válida, ou seja, ao invés de aumentarmos somente 1 Nó quando o processamento do servidor Apache atingir os 90%, é possível aumentar 2, 3 ou qualquer outro valor, de uma só vez.
A regra final para adicionar Nós ficará da seguinte forma, Sempre que a carga é maior que 90% por pelo menos 5 minutos, aumentar para/ou até 3 Nós por 1 contar/ou por vez. Isso quer dizer que se o processamento do servidor ficar acima dos 90% por mais de 5 minutos, 1 Nó será adicionado. Sendo assim, neste exemplo, teremos dois nós e, caso o processamento atinja os 90% novamente, por mais de 5 minutos, um terceiro Nó será adicionado, e assim por diante.
A regra para remover os Nós fica: sempre que a carga for menor que 40%, por pelo menos 10 minutos, diminuir para 1 Nó por 1 Contar. Sendo assim, a regra irá removendo 1 Nó por vez, caso o processamento esteja abaixo dos 40%.
O último item é Enviar notificação por e-mail. Recomendo deixar esta opção habilitada. Assim, toda vez que uma regra for executada, você receberá uma notificação por e-mail informando que um Nó foi adicionado ou removido de seu ambiente.
Feitas todas as configurações, você pode clicar em adicionar, com a regra de processamento criada. Você ainda tem a possibilidade de criar mais regras para o mesmo servidor, porém com outros recursos.
Estatísticas
Na área de estatísticas do Jelastic Cloud, é possível monitorar o consumo dos recursos do servidor, como processamento, memória, disco e rede. É de extrema importância monitoramos estas métricas para saber como o ambiente está se comportando, se os recursos do ambiente estão sendo suficientes ou se estão sobrando. Assim, podemos realizar os devidos ajustes e não gastar dinheiro desnecessariamente, muito menos deixar faltar recursos, o que pode causar problemas em nossa aplicação.
Para que possamos verificar as estatísticas de uso de nossa aplicação, podemos clicar em Estatísticas, acima do ambiente Apache ou MySQL, ou ainda diretamente no Nó que desejamos monitorar, caso se possua um ambiente com vários Nós.
No exemplo, temos no ambiente Apache com 2 Nós e um MySQL com 4 Nós. Clicando acima de qualquer Nó, de qualquer um dos ambientes, teremos as estatísticas somente do Nó escolhido. Porém, se clicarmos acima do ambiente Apache ou MySQL, teremos as estatísticas de todos os recursos somados, ou seja, clicando no Apache veremos os recursos dos 2 Nós somados. Caso o clicado seja o MySQL, veremos os 4 Nós do MySQL somados.
É possível também configurar a forma de exibição das estatísticas e o tempo de exibição da atualização, sendo possível exibir um histórico de até uma semana.
Logs
Nos logs temos acessos a informações preciosas, principalmente quando o cliente reclama que o site está lento, ou que o site caiu.
Quando o cliente reclama que aplicação apresentou algum erro, lentidão ou simplesmente não está acessível, precisamos começar literalmente uma investigação, principalmente se o cliente reclama de algo ocorreu no passado, e que não está mais ocorrendo, ou que piora quando algum evento ocorre de forma periódica.
Além das estatísticas, pelas quais é possível visualizar se houve algum tipo de sobrecarga de recursos, podemos contar com os logs, onde são registrados os logs de acesso ou erros gerados pela aplicação. Nesta área é possível, por exemplo, identificar um ataque DDoS e tomar algum tipo de ação. Em ataques desse tipo, é comum visualizar, nos logs de acesso, diversos IPs, de regiões que normalmente sua aplicação não receberia visitas, sendo possível, portanto, realizar o bloqueio de tais IPs.
Para obter esse tipo de relatório, basta clicar em Logs, acima do seu ambiente Apache, e serão listados na tela todos os arquivos de logs, access_log, error_log, ssl-access, ssl-error (Os arquivos que começam com “ssl-” só estão disponíveis em ambientes cujo certificado SSL está configurado).
Conclusão
Neste artigo, avançamos para o lado prático de como criar e configurar um ambiente no Jelastic. Em nosso exemplo, configuramos um servidor Apache, um banco de dados MySQL e apontamos um domínio para nossa instância, configurando, inclusive, o acesso via FTP. Também vimos como instalar um certificado SSL e como configurar o escalonamento de nossa aplicação, que é uma das facetas mais importantes de uma hospedagem Cloud. Finalmente, vimos como visualizar estatísticas de uso e os logs.
Claro que o Jelastic Cloud possui muito mais recursos, configurações e detalhes igualmente importantes. Porém não seria possível listar todos em um único artigo. Apesar disso, com as informações expostas aqui, já é possível criar e administrar um ambiente básico, porém escalável e confiável, para rodar o WordPress.