Personalizar a pilha para se conectar ao banco de dados do RDS - AWS OpsWorks

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Personalizar a pilha para se conectar ao banco de dados do RDS

Importante

O AWS OpsWorks Stacks serviço chegou ao fim da vida útil em 26 de maio de 2024 e foi desativado para clientes novos e existentes. É altamente recomendável que os clientes migrem suas cargas de trabalho para outras soluções o mais rápido possível. Se você tiver dúvidas sobre migração, entre em contato com a AWS Support equipe no AWS re:POST ou por meio do Premium AWS Support.

Depois de criar uma instância do RDS para usar como banco de dados de back-end para o servidor de aplicativos PHP, você pode personalizar a partir de. MyStack Conceitos básicos das pilhas Linux do Chef 11

Para conectar o Servidor de aplicativos PHP a um banco de dados RDS
  1. Abra o console OpsWorks Stacks e crie uma pilha com uma camada de PHP App Server que contenha uma instância e implante o SimplePHPApp, conforme descrito em. Conceitos básicos das pilhas Linux do Chef 11 Essa pilha usa a versão 1 do SimplePHPApp, que não usa uma conexão de banco de dados.

  2. Atualize a configuração da pilha para usar os livros de receitas personalizados que incluem a receita appsetup.rb, além do modelo relacionado e os arquivos de atributo.

    1. Defina Use custom Chef cookbooks como Yes.

    2. Defina Repository type como Git e Repository URL como git://github.com/amazonwebservices/opsworks-example-cookbooks.git.

  3. Adicione a caixa Custom Chef JSON da pilha para atribuir os dados de conexão do RDS aos atributos [:database] que appsetup.rb utiliza para criar o arquivo de configuração.

    { "deploy": { "simplephpapp": { "database": { "username": "opsworksuser", "password": "your_password", "database": "rdsexampledb", "host": "rds_endpoint", "adapter": "mysql" } } } }

    Use os seguintes valores de atributo:

    • username: o nome de usuário principal que você especificou ao criar a instância do RDS.

      Este exemplo usa opsworksuser.

    • password: a senha mestre que você especificou quando criou a instância do RDS.

      Preencha com a senha que você especificou.

    • database: o banco de dados que você criou ao criar a instância de RDS.

      Este exemplo usa rdsexampledb.

    • host: o endpoint RDS da instância, obtido no console RDS ao criar a instância na seção anterior. Não inclua o número da porta.

    • adapter: o adaptador.

      A instância RDS deste exemplo usa MySQL, portanto adapter está definido como mysql. Diferentemente de outros atributos, adapter não é usado por appsetup.rb. Em vez disso, é usado pela receita Configurar interna da camada PHP App Server para criar um arquivo de configuração diferente.

  4. Edite a PHPApp configuração Simple para especificar uma versão do Simple PHPApp que usa um banco de dados back-end, da seguinte forma:

    • Document root: defina essa opção como web.

    • Branch/Revision: defina essa opção como version2.

    Deixe as opções restantes inalteradas.

  5. Edita a camada PHP App Server para configurar a conexão do banco de dados ao adicionar phpapp::appsetup para as receitas de implantação da camada.

  6. Implante a nova PHPApp versão Simple.

  7. Quando o Simple PHPApp for implantado, execute o aplicativo acessando a página Instâncias e clicando no endereço IP público da instância php-app1. Você deve visualizar a seguinte página no navegador, que permite inserir texto e armazená-lo no banco de dados.

    Text input field labeled "Your Thoughts" with a "Share Your Thought" button.
nota

Se sua pilha tiver uma camada MySQL OpsWorks , o Stacks atribuirá automaticamente os dados de conexão correspondentes aos atributos. [:database] No entanto, se você atribuir o JSON personalizado à pilha que define valores diferentes de [:database], eles substituem os valores padrão. Como os atributos [:deploy] são instalados em cada instância, qualquer receita que depende dos atributos [:database] usará os dados de conexão personalizados e não os dados da camada MySQL. Se você deseja uma camada de servidor de aplicativo específico para usar os dados de conexão personalizados, atribua o JSON personalizado ao evento Implantar da camada e restrinja a implantação à camada. Para obter mais informações sobre como usar os atributos de implantação, consulte Implementação de aplicativos. Para obter mais informações sobre substituir os atributos internos do OpsWorks Stacks, consulte Sobrepor atributos.