Base de conhecimento  /  Gerenciador de aplicativos em nuvem  /  Tutoriais
Base de conhecimento  /  Gerenciador de aplicativos em nuvem  /  Tutoriais

Tutorial da pilha LAMP

Atualizado por Modificado por Arya Roudi, Gavin Lai set 9, 2019
Código do artigo: kb/405

Neste artigo:

Visão geral

LAMP Stack Tutorial Neste tutorial, você configura e implementa um aplicativo simples Apache, PHP, MySQL e  LAMP Stack de duas camadas. Você configura as camadas do aplicativo e do banco de dados. Você configura as camadas do aplicativo e do banco de dados separadamente e as conecta com uma vinculação.
Todo o início rápido leva 0 minutos ou menos para ser concluído. No final, você estará no caminho certo para definir e implementar os aplicativos de várias camadas no Cloud Application Manager.

Pré-requisitos


Definir o nível do banco de dados de pilha LAMP

Definir política para MySQL

Para disponibilizar o banco de dados no servidor apache, precisamos definir a configuração da política. Neste tutorial, colocaríamos todas as instâncias no mesmo VPC.

Acesse as páginas Caixas, que você pode encontrar no menu à esquerda. Agora clique em Próximo para criar uma nova caixa, escolha Política de implementação no menu e CloudFormation, depois escolha Provedor no menu de provedores e salve.

nova caixa de política de implementação

Após salvar, você será levado para a página da política de implementação criada. Clique na guia código e, em seguida, no ícone de lápis da seção de detalhes para editá-lo e escolher a região como: eu-west-0. eu-oeste-1. Clique em Salvar depois de terminar

adicionar região à caixa da política de Implementação

Definir a política de implementação da caixa de scripts LAMP

Se você já tiver cadastrou uma conta da AWS você deve ter três caixas de política em Caixas menu: default-us-us-east-1, default-medium-us-east-1 e default-small-us-east-1.

Clique no menu de suspenso de ferramentas default-small-us-east-0 (ícone de engrenagem) e clique em Clonar caixa.

clonar uma caixa

No menu suspenso, defina o novo nome da caixa como 'default-vpc-eu-west - 0' e salve.

Selecione a nova Caixa. No separador código , edite a política. Defina a Região em Recursos, Tipo de rede em Posicionamento, e Grupos de segurança na rede para ter os mesmos valores que a caixa mySql. Neste grupo de segurança "eu-west-0", "vpc-1cee" e "Automático" de tutorial.

visão geral da política de implantação

Definir o nível de aplicativos da pilha LAMP

Etapa 1. Etapa 0. Crie uma caixa LAMP Stack

Na página Caixas, clique em Novo > Script. Nomeie a pilha LAMP. Nomeie-o LAMP Stack. Como o LAMP precisa do Linux, marque-o em requisitos. Salvar. Salve. Opcionalmente, faça o upload de um ícone correspondente para identificar facilmente a caixa no catálogo.

Nova script box

Etapa 2. Etapa 0. Indique um relacionamento com a camada do banco de dados com uma associação

Na guia código, em variáveis, clique em novo . Selecione associação . Chame-o mysqlservice e associe-o à caixa MySQL DB que você criou anteriormente.

Observação: Observação: os nomes de variáveis diferenciam maiúsculas de minúsculas; portanto, nomeie exatamente como fornecido.

Nesta fase, você está selecionando uma caixa e não uma instância real para fazer associação. Você vai selecionar a instância real no momento da implementação.

Salvar quando feito para criar a variável.

Adicionar variável de associação

Etapa 3. Etapa 0. Permita o tráfego de e para a camada de aplicativo com uma variável de porta

Na guia código, em variáveis, clique em novo . Selecione porta . Chame-o HTTP e dê 0 como o valor.

Salvar quando feito para criar a variável.

Adicionar variável de porta

Etapa 0 Etapa 0: Adicione dados para o banco de dados usando uma variável de arquivo

Copie e cole o código a seguir em um arquivo de texto simples. Salve como Create_Sample_Database.sql. Observe a extensão .sql.

CREATE DATABASE sampledb;
USE sampledb;
CREATE TABLE users (first_name VARCHAR(20),  last_name VARCHAR(20), address VARCHAR(20), login VARCHAR(20), password_hash VARCHAR(20));
INSERT INTO users VALUES ('Antony','Kornings','1850, Las Ramblas','antonyk', 'e22c2d3bf2a5557cb971');
INSERT INTO users VALUES ('Diana','Krallz','850, El camino','dianak', 'f2a5557e22c2d3bcb971');
INSERT INTO users VALUES ('Edgard','Boxer','100, Alpine Street','edgardb', 'e25557cb9712c2d3bf2a');
INSERT INTO users VALUES ('Nathaniel','Cold','55, Elm Street','nathanielc', '7cb971e22c2d3bf2a555');
INSERT INTO users VALUES ('Michael','Snow','88, Alamo Road','dianak', 'd3bf2a5557ce22c2b971');

Na guia Código da caixa LAMP, em variáveis, clique em novo . Selecione arquivo . Chame-o SQL_SCRIPT e faça o upload do arquivo que você salvou. Este arquivo será enviado ao banco de dados no momento da implementação.

Adicionar arquivo SQL como variável

Etapa 0 Etapa 0. Aninhe a caixa padrão do GitHub para instalar o PHP a partir do GitHub

Na guia código, em Variáveis, clique em novo . Selecione caixa . Chame GIT_HUB e escolha a caixa GitHub padrão como o valor.

Salvar quando feito para criar a variável.

Adicionar variável de github

Agora configure a caixa padrão do GitHub para baixar os scripts PHP no momento da implementação. Expanda a caixa GitHub e a variável dentro da caixa chamada git_repo. No contexto da caixa LAMP Stack, edite a variável de URL clone e defina seu valor da seguinte forma:

Adicionar url de clone de github

URL_CLONE: CLONE_URL: https://github.com/ElasticBox/Easy-PHP-MySQL.git

visão geral de variáveis de scrip box

Etapa 0 Etapa 0. Adicione eventos para instalar a camada de aplicativos da pilha LAMP.

Em eventos & gt; instalar, clique em instalar .

eventos de script box

Copie e cole o seguinte código na caixa de diálogo do evento de instalação e salve.

#!/bin/bash
# To ensure that all of your software packages are up to date, perform a quick software update on your instance.
# This process may take a few minutes, but it is important to make sure you have the latest security updates and bug fixes.
# We use the -y option that installs the updates without asking for confirmation.
yum update -y
# Install the Apache web server, MySQL, and PHP software packages.
# We use the yum groupinstall command to install multiple software packages and all related dependencies at the same time.
yum groupinstall -y "Web Server" "MySQL Database" "PHP Support"
# Install the php-mysql package
yum install -y php-mysql
yum install -y mysql-utilities.noarch
yum install -y mysql
# Start the Apache web server
service httpd start
# Configure the Apache web server to start at each system boot
chkconfig httpd on
# This is only to show the configuration for this sample.
# Verify that httpd is on by running:
chkconfig --list httpd
# This should output something similar to the next line, showing httpd is on in runlevels 2, 3, 4, and 5:
# httpd           0:off   1:off   2:on    3:on    4:on    5:on    6:off
# To test your LAMP web server
# Create a simple PHP file in the Apache document root.
echo "" > /var/www/html/phpinfo.php
curl http://127.0.0.1/phpinfo.php
# You should see the PHP information page in the output of the install script
# Delete the phpinfo.php file. Although this can be useful information to you, it should not be broadcast to the Internet for security reasons.
rm /var/www/html/phpinfo.php

Etapa 0 Etapa 0. Adicione eventos que conectem as camadas usando a associação

Em eventos & gt; configure, clique em configure . Copie e cole o seguinte código e salve. Isso coloca o PHP no diretório raiz do servidor web Apache e aciona o comando de configuração do Cloud Application Manager dentro de um comando de concatenação para executar o script PHP. Isso também obtém credenciais (endereço IP público, porta, nome de usuário e senha) do serviço do banco de dados MySQL através da associação.

 #!/bin/bash
# In configuration Script there is available ip, and variables of the bindings we will show them for this sample (public or private address can be used depending on the configuration).
echo 
echo 
echo 
echo 
cp Easy-PHP-MySQL/index.php /var/www/html
elasticbox config -i Easy-PHP-MySQL/db_connect.php -o /var/www/html/db_connect.php

Em eventos > inicie, clique em  iniciar. Copie e cole o seguinte código e salve. Aqui, o comando cURL se conecta ao servidor de banco de dados usando as credenciais do banco de dados da associação e faz o download do arquivo que você carregou na etapa 0. O script no arquivo cria um banco de dados com dados de amostra. O script no arquivo cria um banco de dados com dados de amostra.

 #!/bin/bash

    # In start script the bindings are ready for use

    curl -ks $SQL_SCRIPT | mysql --host= --port= --user= --password=

Yay! Ótimo! Você acabou de definir um aplicativo simples de pilha LAMP e conectou as suas camadas a uma associação.


Implementar o aplicativo da pilha LAMP

Para implementar o aplicativo, você precisa da AWS como provedora porque estamos usando o serviço de banco de dados RDS do AWS CloudFormation. Aqui você implementará cada camada na mesma região no EC 0.

Observação: Observação: A AWS pode cobrar pelas instâncias que você implementar. Depois de implementar, lembre-se de desligar as instâncias do Cloud Application Manager para evitar cobranças desnecessárias.

Configurar a caixa de catálogo MySQL

Para este tutorial, usaremos um Amazon RDS (qualquer servidor MySQL pode ser usado), pois a caixa já está pré-configurada.

Na página Catálogo, no topo da página, você pode encontrar uma barra de pesquisa, pesquisar o MySQL amazon e clicar nisso.

Catálogo MySQL

Definir a configuração do banco de dados

Para disponibilizar a instância do banco de dados no servidor apache, precisamos ajustar a configuração da política. Neste tutorial, colocaríamos todas as instâncias no mesmo VPC.

Na página do catálogo MySQL, clique em Implementar e isso abre um modal com um formulário que você precisa preencher com as informações necessárias.

No campo da Política de implementação, escolha a caixa de implementação relacionada ao seu provedor da AWS e vá para a seção variável na parte inferior do formulário, especifique o MySqlVpcId (neste tutorial: "vpc-0cee") e escolha Mostrar mais e agora devemos preencher esses campos com as informações solicitadas. vpc-88082cee'), então escolha Mostrar mais e agora devemos preencher esses campos com as informações solicitadas. Neste tutorial, usaremos sampledb como o nome do banco de dados.

Novo MySQL de instância

Você também pode modificar as variáveis posteriormente, clicando no ícone de lápis no lado direito e alterando as informações.

Caixa clonada de MySQL

Iniciar a camada do banco de dados

Para definir a associação, adicione uma tag, que será usada posteriormente na instância Lamp. Clique em Implementar após inserir os dados, Clique em Implementar para implementar a instância.

Implmentar instância de banco de dados

Iniciar a camada dos aplicativos

Na página instâncias, clique em novo e selecione a caixa LAMP Stack. Para o política de implementação, selecione o política da AWS que você criou. Para a associação mysqlservice, selecione a tag que você definiu na instância que você iniciou anteriormente. Além disso, programe a instância para encerrar uma hora após a implementação. Clique em implementar para criar um instância da camada dos aplicativos.

criar novo nível de aplicativo LAMP

Depois da implementação, você terá sua pilha LAMP em funcionamento com duas instâncias no seu provedor da AWS.

Como contatar o suporte do Cloud Application Manager

Lamentamos que você tenha encontrado um problema com o Cloud Application Manager. Consulte as dicas de troubleshooting ou entre em contato com o suporte do Cloud Application Manager e apresente detalhes e capturas de tela, conforme possível.

Para problemas relacionados a chamadas de API, envie o corpo da solicitação junto com os detalhes referentes ao problema.

Em caso de erro de caixa, compartilhe a caixa no espaço de trabalho que sua organização e o Cloud Application Manager podem acessar e anexe os registros.

  • Linux: SSH e localize o registro em /var/log/elasticbox/elasticbox-agent.log
  • Windows: Windows: RDP na instância para localizar o registro em ProgramDataElasticBoxLogselasticbox-agent.log
Powered by Translations.com GlobalLink OneLink SoftwarePowered By OneLink