Como criar um servidor básico Web com PHP e Mysql no Cloud da Amazon parte 1/2


Os passos não são tão complexos, mas são vários.

Vou partir do pressuposto que você já tem uma conta no AWS (http://aws.amazon.com/) e já tenha registrado o seu cartão de crédito. Sem o cadastro do cartão de crédito internacional, a Amazon não permite que você crie uma instância mesmo as elegíveis gratuitas (http://aws.amazon.com/free/).

O primero passo é acessar a sua conta na AWS – https://console.aws.amazon.com/s3/home

Login e Cadastro no AWS

Login e Cadastro no AWS

Nesta tela você pode tanto acessar a sua conta como criar.

Ao acessar sua conta clique na aba EC2, ela é a responsável por criar e gerenciar todas as instancias de servidores.

Painel AWS - EC2

Painel AWS - EC2

Na dashboard da EC2 você pode criar a sua instancia de servidor clicando no botão “Launch Instance”. Um detalhe importante é a Região (“Region” ou núvem) onde você irá criará seu servidor , fica do lado esquerdo superior em “Navigation”. Eu sugiro sempre criar em “US East (Virginia)” enquanto a Amazon não se estabele aqui na América do Sul, essa é a região com a menor latencia.

Agora vamos para os passos mais interessantes, vamos clicar no “Launch Instance”.

AWS - EC2 Escolha seu SO e o tipo 32 ou 64bits

AWS - EC2 Escolha seu SO e o tipo 32 ou 64bits

A Amazon disponibiliza a criação de instancias “gratuitas” a partir de duas imagens da própria Amazon, essas imagens são baseadas no Fedora, e possui as ferramentas (yum) necessárias para instalarmos nossas aplicações sem dores de cabeça.

A observação que faço nesse ponto é que a imagem de 64bits da amazon permite você criar um servidor básico ou as mais tops (relacionado ao número de core e memória Ram), enquanto o 32bits amazon permite você criar todo o range disponível. Logo se você quer avaliar qual o perfil de servidor que satisfaz sua aplicação você terá que optar por 32bits porque 64bit você não terá muitas opções.

Além do linux Fedora a Amazon disponibiliza o Suse e o algumas versões do Windows. Não vou listar quais versões e nem descrever muito as características porque amanhã essas informações já podem estar desatualizadas.

Para demonstrar a diferença das opções de tipo de instancia disponibilizadas para  “ Basic 32-bit Amazon Linux AMI 2011.02.1 Beta” e “Basic 64-bit Amazon Linux AMI 2011.02.1 Beta” veja nas próximas imagens

AWS EC2 32bits - Selecionar os detalhes da instancia do servidor

AWS EC2 32bits - Selecionar os detalhes da instancia do servidor

AWS EC2 64bits - Selecionar os detalhes da instancia do servidor

AWS EC2 64bits - Selecionar os detalhes da instancia do servidor

Existem outras opções nessa tela, mas vou focar no processo básico. No menu “Instance Type” o modelo de 64bits oferece todos esse modelos mas como o gratuito é o “Micro” eu vou escolher esse e manter as demais opções sem alteração !

A próxima tela também não requer nenhuma alteração, os valores Default são suficientes para que o seu servidor funcione sem problemas, em outros artigos eu detalho melhor o que é cada um desses itens.

Configurações extras para a instancia, mantenha os valores Default

Configurações extras para a instancia, mantenha os valores Default

Seguindo para a próxima tela, a AWS disponibiliza uma forma de identificarmos as instancias que iremos criar. O modelo de chave valor, é para tornar o mais flexível possível as formas de identificarmos uma instancia da outra. Imagina que você tenha 10 clientes e cada um tenha 5 servidores ativos, seja alguns com espelhamento com banco e outros espelhando a aplicação. Os arranjos de servidores podem ser o mais diversos possíveis, pensando nisso, essa tela é flexível para que você identifique a sua instancia. A única “Key” que sugiro que você não mude o termo e informe um “Value” é a primeira que ele já traz preenchida “Name”, esse será o único campo que a listagem de instancia trará para você, e será a primeira característica para identificar seu servidor.

AWS EC2 - Tela para identificar a instancia de servidor

AWS EC2 - Tela para identificar a instancia de servidor

Ao avançar para a próxima “fase”, vamos criar a nossa chave de acesso. Essa tela e essas opções é para a criação de um servidor linux, a criação de um servidor windows a AWS apresenta outra tela com outras opções para gerar outro tipo de chave.

Ao informar um nome e clicar em “Create & Download your Key Pair” você terá a chave (PEM) para acessar o seu servidor com o usuário ec2-user. O acesso a um servidor linux por padrão é feito através do protocolo SSH, existem diversos clientes para Windows, Linux e OSX, e caso não tenha idéia do que é SSH eu sugiro primeiro estudar comandos Linux antes de continuar essa aventura!! 🙂 Se você usa sftp para transferir arquivos e domina esse protocolo, não se esqueça que o servidor que a amazon irá lhe disponibilizar não tem nenhum serviço de web ou banco disponível.

Guarde bem sua chave, pois precisará dela daqui para frente para acessar esse servidor. Se perder terá como baixar a chave pública para regera-lá mas não é um processo trivial, caso nunca tenha feito.

AWS EC2 - Criando sua chave de acesso ao seu servidor

AWS EC2 - Criando sua chave de acesso ao seu servidor

 

O próximo passo e configurar as regras de firewall. Como o nosso objetivo é montar um servidor Web para que todos acessem, eu gerei as regras para SSH, HTTP e HTTPS. Através do selectbox “Create a new rule” você deve selecionar os três tipos: SSH, HTTP e HTTPS e adiciona-los (“Add Rule”). Não se preocupe com o valor “0.0.0.0/0” no campo “Source” isso significa que “qualquer origem”.

EWS EC2 - Criando as regras de Firewall

EWS EC2 - Criando as regras de Firewall

A próxima tela é finalmente a Review de todo o processo, a sua instancia de servidor está a um clique de iniciar.

AWS EC2 - Review do servidor a ser criado

AWS EC2 - Review do servidor a ser criado

O botão mágico “Launch” finalmente apareceu, basta clicar e aguardar o status “Pending”…

AWS EC2 - Visualização do status Pendente na instancia do servidor

AWS EC2 - Visualização do status Pendente na instancia do servidor

… se transformar em “running”

AWS EC2 - Visualização do status Executando na instancia do servidor

AWS EC2 - Visualização do status Executando na instancia do servidor

Maravilha, parabéns pelo seu primeiro servidor nas “núvens” da Amazon. Agora vamos para a segunda faze, como acessar esse servidor e configurá-lo.

Mas antes, quero dar algumas dicas das possíveis ações que você pode executar na sua instancia.

Cada instância tem diversas opções, basta clicar com o botão direito que você verá a pequena lista.

AWS EC2 - Opções disponíveis para instância de servidor

AWS EC2 - Opções disponíveis para instância de servidor

No item “Conect” você tem o exemplo de como conectar no servidor utilizando o serviço SSH. O exemplo serve para clientes SSH rodando Linux ou MacOS, caso o seu sistema operacional seja Windows, com certeza terá uma dificuldade em transformar o .PEM em .PPK caso o seu cliente de SSH seja o PUTTY, mas se tiver um cliente SSH que aceite o .PEM você é um garoto de sorte.

Os demais itens do “Instance Management” você pode ver e alterar, mas não tem nada a ser alterado para que a sua instancia funcione. O outro item importante é o grupo “Instance Lifecycle”, nele você pode parar (“Stop”), reiniciar (“Reboot”) e destrutir a sua instancia (“Terminate”). Cuidado se clicar em “Terminate”, pois seus dados serão removidos. Se parar uma instancia (“Stop”) os valores (custos) por hora são reduzidos e em alguns casos nem são cobrados, veja a tabela de preços. E a outra vantagem de se parar uma instancia que seu “Root Device” é “EBS”  é que os dados ou os serviços que configurou não serão perdidos. Mas preste atenção no seu IP e na URL de acesso, todo o ciclo Stop – Start a configuração de acesso a instancia é alterada.

Na próxima parte do “tutorial” vamos abordar a partir deste ponto e conectando no servidor, instalando e configurando os aplicações para transformar sua instancia de servidor em um servidor WEB.

 

Você pode seguir este artigo através do RSS 2.0 feed. Você pode deixar uma resposta, ou trackback do seu próprio site.

Deixe um Comentário

Time limit is exhausted. Please reload CAPTCHA.

*