AWS Elastic Beanstalk
Guia do desenvolvedor

Adição de instância de banco de dados do Amazon RDS ao ambiente de aplicativos Ruby

Você pode usar uma instância de banco de dados do Amazon Relational Database Service (Amazon RDS) para armazenar dados coletados e modificados pela aplicação. O banco de dados pode ser anexado ao seu ambiente e gerenciado pelo Elastic Beanstalk ou criado e gerenciado externamente.

Se você estiver usando o Amazon RDS pela primeira vez, adicione uma instância de banco de dados a um ambiente de teste com o Console de Gerenciamento do Elastic Beanstalk e verifique se o aplicativo pode se conectar a ele.

Para conectar-se a um banco de dados, adicione o adaptador ao seu aplicativo e configure uma conexão com as propriedades de ambiente fornecidas pelo Elastic Beanstalk. A configuração e o código de conexão variam de acordo com o mecanismo de banco de dados e a estrutura que você usa.

Para ambientes de produção, crie uma instância de banco de dados fora do ambiente do Elastic Beanstalk para desacoplar os recursos de ambiente dos recursos do base de dados. O uso de uma instância de banco de dados externa permite se conectar ao mesmo banco de dados em vários ambientes e realizar implantações azul/verde. Para obter instruções, consulte Uso do Elastic Beanstalk com o Amazon Relational Database Service.

Adição de uma instância de banco de dados ao seu ambiente

Para adicionar uma instância de banco de dados ao ambiente

  1. Abra o Console do Elastic Beanstalk.

  2. Navegue até a página de gerenciamento do ambiente.

  3. Escolher configuração.

  4. Na categoria de configuração Database (Banco de dados), selecione Modify (Modificar).

  5. Escolha um mecanismo de banco de dados e insira um nome de usuário e senha.

  6. Escolha Aplicar.

A adição de uma instância de banco de dados leva cerca de 10 minutos. Quando a atualização do ambiente for concluída, o nome de host da instância de banco de dados e outras informações de conexão estarão disponíveis para o seu aplicativo por meio das seguintes propriedades de ambiente:

  • RDS_HOSTNAME – O nome de host da instância de banco de dados.

    Rótulo do console do Amazon RDS – Endpoint (este é o nome do host)

  • RDS_PORT – A porta na qual a instância de banco de dados aceita conexões. O valor padrão varia entre os mecanismos de banco de dados.

    Rótulo do console do Amazon RDS – Porta

  • RDS_DB_NAME – O nome do banco de dados, ebdb.

    Rótulo do console do Amazon RDS – Nome do banco de dados

  • RDS_USERNAME – O nome de usuário que você configurou para seu banco de dados.

    Rótulo do console do Amazon RDS – Username

  • RDS_PASSWORD – A senha que você configurou para seu banco de dados.

Para obter mais informações sobre como configurar uma instância de banco de dados interna, consulte Adição de um banco de dados ao seu ambiente Elastic Beanstalk.

Download de adaptador

Adicione o adaptador de banco de dados ao arquivo de gem de seu projeto.

exemplo Gemfile – Rails com o MySQL

source 'https://rubygems.org' gem 'puma' gem 'rails', '4.1.8' gem 'mysql2'

Gems de adaptadores comuns para Ruby

  • MySQLmysql2

  • PostgreSQLpg

  • Oracleactiverecord-oracle_enhanced-adapter

  • SQL Server sql_server

Conectar-se a um banco de dados

O Elastic Beanstalk fornece informações de conexão referentes às instâncias de banco de dados associadas nas propriedades de ambiente. Use ENV['VARIABLE'] para ler as propriedades e configurar uma conexão de banco de dados.

exemplo config/database.yml – Configuração do banco de dados de Ruby on Rails (MySQL)

production: adapter: mysql2 encoding: utf8 database: <%= ENV['RDS_DB_NAME'] %> username: <%= ENV['RDS_USERNAME'] %> password: <%= ENV['RDS_PASSWORD'] %> host: <%= ENV['RDS_HOSTNAME'] %> port: <%= ENV['RDS_PORT'] %>