Hospedando seu site no AWS Cloud Server – um tutorial
Publicados: 2018-09-07“Eu não preciso de um disco rígido no meu computador se eu puder chegar ao servidor mais rápido… carregar esses computadores não conectados é bizantino em comparação.” - Steve Jobs.
O que era ficção científica de ontem tornou-se a realidade de hoje. Essa declaração realmente resume como os computadores interconectados revolucionaram nossas vidas. O advento da computação em nuvem deu início a uma forma de democracia no cenário digital global altamente competitivo. Na verdade, criou condições de concorrência equitativas para as pequenas e médias empresas hospedarem seus sites, bancos de dados, análises, redes, mobilidade e aplicativos em plataformas de nuvem seguras como a AWS. Ao fazer isso, eles obtêm uma série de benefícios, como otimização de custos (pagamento conforme o uso), flexibilidade (soluções personalizadas provisionando o servidor quando necessário), escalabilidade, segurança e velocidade.
Entre os vários serviços de hospedagem em nuvem, Amazon Web Services (AWS) tornou-se o líder indiscutível com uma base de assinantes ativos de 1 milhão em mais de 190 países (Fonte: https://expandedramblings.com/index.php/amazon-web-services -statistics-facts/.) Além disso, a AWS hospeda quem é quem dos negócios globais, como Reddit, Netflix, Nokia, Discovery, Lamborguini, Dow Jones, Unilever, Pfizer, Vodafone e muitos outros (Fonte: Reddit.com.) O as estatísticas acima estabelecem firmemente a AWS como uma solução de hospedagem segura e econômica. Então, se você quiser se juntar à lista de empresas acima e hospedar seu site na AWS, o blog pode atuar como um calculador pronto. Ele lista o processo (junto com as capturas de tela relevantes) para hospedar seu site no servidor da nuvem AWS na forma de um tutorial. No entanto, antes de entrar no assunto, é melhor entender algumas terminologias.
Glossário de termos
Amazon EC2: O Amazon Elastic Compute Cloud é um serviço da web que ajuda você a executar máquinas virtuais na nuvem configurando sua capacidade, segurança e rede.
Instância do EC2: um servidor virtual no Elastic Compute Cloud (EC2) da Amazon para executar seu software de negócios.
Par de chaves: a plataforma EC2 usa um algoritmo de criptografia de chave pública para criptografar e descriptografar as informações de login. De acordo com isso, a chave pública criptografa um dado (leia uma senha) enquanto o destinatário usa uma chave privada para descriptografar o mesmo. A combinação de chaves públicas e privadas é chamada de par de chaves.
SSH: Conhecido como Secure Shell, o SSH é um protocolo de rede para operar serviços de rede seguros em uma arquitetura cliente-servidor. Os exemplos estão acessando as contas shell em vários sistemas operacionais como Unix.
Software Puttygen: como um gerador de chaves e um aplicativo de transferência de arquivos de rede gratuito e de código aberto, ele gera pares de chaves relacionados a chaves públicas e privadas.
O tutorial no AWS Cloud Server
Etapa 1: acesse a URL https://aws.amazon.com/ e preencha os detalhes de login conforme mostrado abaixo.

Depois de fazer login na conta da AWS, o painel principal aparece conforme abaixo. Observe os campos principais sendo precedidos por '0'.
Etapa 2: Antes de criarmos o EC2, precisamos criar um par de chaves para associar ao EC2. O par de chaves ajuda a conectar o EC2 por meio de SSH.

Etapa 3: Após a criação do par de chaves, um arquivo .PEM único é gerado e baixado. Agora, precisamos gerar um arquivo .PPK a partir do arquivo .PEM usando o software Puttygen. Durante este tempo, temos que entrar em uma fase de passagem também. Mais tarde, precisamos usar este arquivo PPK para conectar o EC2 através do SSH.



Etapa 4: Agora estamos prestes a criar uma instância do EC2.
Etapa 5: Clique em Launch Instance para começar a configurar seu próprio EC2.
Etapa 6: Selecione um sistema operacional para o seu EC2. Para este tutorial, usamos o Ubuntu Server 16.04 LTS (HVM), SSD Volume Type- ami-51537029, que é de código aberto e gratuito.
Etapa 7: Em seguida, temos que selecionar nosso tipo de EC2 (CPU, Memória/RAM etc.) Para este tutorial, usamos o t2micro, que vem com elegibilidade de nível gratuito por um ano.

Passo 8: Agora temos que selecionar o número de instância/Máquina e deixar as coisas restantes como estão.
Passo 9: Depois de clicar nos botões Revisar e iniciar, uma página de revisão aparecerá. Clique no botão Launch na página de revisão e veja seu EC2 sendo gerado. Levará alguns minutos para começar a correr.

Etapa 10: É hora de dar permissão ao firewall usando o grupo de segurança.

- Adicione SSH nas seções de entrada e saída e permita 22 (porta de transferência de arquivos)
- HTTP 80 (porta do navegador)
Agora, uma vez que nosso EC2 está em execução, podemos conectá-lo através do software Puttygen.

Etapa 11: Digite seu IP público como o nome do host. Você obterá este IP público da sua página EC2. Além disso, selecione a opção SSH.


Passo 12: Clique no botão Procurar para selecionar o arquivo PPK que geramos a partir do arquivo PEM do par de chaves e clique em abrir. Isso abrirá o software Puttygen.
Etapa 13: Aqui, você será solicitado a inserir o nome de usuário e a senha de login. Observe que o nome de usuário padrão é 'ubuntu' para o Ubuntu Server 16.04 LTS usado neste tutorial. A senha é a fase de acesso que você definiu no momento da criação do arquivo PPK.

Etapa 14: Depois de fazer login com sucesso, você pode prosseguir para instalar as dependências como Apache, MySql, PHP e outras, conforme descrito abaixo.
Para configurar um Apache Server Engine, digite o seguinte
$ sudo apt-get update
$ sudo apt-get install apache2
Para configurar o banco de dados MySql, digite o seguinte
$ sudo apt-get install mysql-server
Para configurar a linguagem PHP e outras dependências, digite o seguinte
$ sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql
Para que o PHP e o MySQL funcionem, precisamos reiniciar o servidor Apache
$ sudo systemctl restart apache2
Agora, se você digitar seu IP público (do EC2) no navegador, a seguinte tela aparecerá.

Se você não estiver recebendo essa tela, verifique as etapas anteriores mais uma vez.
A partir de agora, a configuração do seu servidor está concluída. Agora, vamos conectar seu servidor com a ferramenta de transferência de arquivos – FileZilla no nosso caso.
Etapa 15:
- Digite seu IP público na seção de host.
- Selecione SFTP como o protocolo.
- Para login, digite o arquivo de chave padrão como 'ubuntu' e navegue no arquivo PPK.
- Clique em conectar e, quando solicitado por uma senha, digite a fase de acesso que você inseriu no momento da criação do arquivo PPK.
Assim que a conexão for estabelecida, aparecerá a tela '/home/ubuntu', que você deve redirecionar em '/var/www/html'. Esta pasta é criada com a instalação do Apache e do PHP. Esta será a raiz da web do seu site, onde você fará o upload de todos os seus arquivos. Carregue um arquivo html/php de demonstração e verifique-o em seu navegador com ' http://your_public_IP/demo.php '.

Etapa 16: Uma vez que o site esteja funcionando, a próxima etapa é o domínio apontando através da opção Route53. Você pode obter essa opção no menu de serviço -> Networking & Content Delivery -> Route53.



Passo 17: Aqui você deve definir o seguinte:
- Um registro (conexão EC2),
- Um registro MX (conexão do servidor de e-mail),
- O registro NS e SOA serão gerados automaticamente,
- CNAME para fazer um alias com www e sem www.
Etapa 18: Agora, faça login com seu provedor de domínio e vá para a página de gerenciamento do Name Server (NS). Aqui, você deve inserir os registros NS do AWS Route53. Depois que esse processo for concluído, você precisará aguardar algum tempo para propagar totalmente o domínio para a AWS. O tempo pode variar dependendo do seu provedor de domínio. Por exemplo, em média, o tempo máximo pode ser de 24 horas.
Depois que seu domínio estiver totalmente propagado, você poderá inserir o mesmo no navegador.
Conclusão
Ao hospedar seu site no servidor EC2 Amazon Web Service (AWS), você se junta à lista cada vez maior de empresas e obtém uma infinidade de benefícios praticamente sem custo extra. Este exercício manterá sua empresa em boas condições e a ajudará a competir contra os jogadores estabelecidos. Portanto, se você deseja projetar, desenvolver e hospedar seu site no servidor da nuvem AWS a preços econômicos, entre em contato com uma empresa de desenvolvimento de sites profissional e experiente.
