Posso administrar instâncias do Amazon RDS com Chef? Sal? Fantoche? Ansible?

1
Em face disso, parece que eu preciso ser capaz de instalar alguns daemons de software nos nós de destino para que essas coisas funcionem. Se eu não puder fazer isso (por exemplo, uma instância do Amazon RDS), quais são minhas opções?

Da mesma forma, Ansible parece ser baseado em todo SSH. Isso pode ser usado para configurar o RDS?

Obrigado pelo feedback - a discussão levou-me a uma questão mais específica aqui: link

    
por user14645 10.04.2014 / 22:16

4 respostas

7

Você PODE administrar o RDS usando o Ansible com rds , rds_param_group e rds_subnet_group módulos. Eles não dependem da instalação de nenhum agente de gerenciamento remoto (ew!) E não fazem o ssh diretamente no nó. Esses três módulos se comunicam com a AWS usando chamadas de API fornecidas oficialmente (com a ajuda da biblioteca boto ).

É possível que eles não consigam fazer tudo que você puder em sua própria instância do EC2 executando o MySQL, mas esses módulos ainda oferecem algum grau de gerenciamento.

    
por 11.04.2014 / 21:33
6

Expandindo a boa resposta e os comentários de Nathan, posso oferecer mais algumas explicações sobre por que as ferramentas de gerenciamento de configuração não funcionam bem (se necessário) com soluções SaaS como o Amazon RDS.

O RDS é essencialmente "MySQL hospedado". Você não obtém acesso ao sistema operacional subjacente, portanto, não é possível instalar pacotes, pesquisar os arquivos de configuração ou os arquivos de log finais. Sua única interface com o RDS a partir de uma perspectiva de configuração é via Web Console ou API da Amazon, exatamente da mesma forma que o Elasticache é "hospedado Memcache" e o ELB pode ser considerado como "hospedado HAproxy" - eles são SaaS (Software as a Service) ) ofertas.

Como resultado, as ferramentas tradicionais de gerenciamento de configuração, como o Puppet ou o Chef, não funcionarão, pois precisam de acesso completo no nível do sistema operacional.

Uma ferramenta que pode ser útil, no entanto, é o próprio utilitário CloudFormation da Amazon. Não "gerenciamento de configuração", por si só, mas pode ser usado como um substituto. Consulte a documentação da Amazon para obter mais detalhes.

Se você realmente quiser usar o Puppet ou outra ferramenta de gerenciamento de configuração na Amazon, precisará executar sua própria instalação do MySQL na instância do EC2. Isso tem desvantagens e vantagens, no entanto, à medida que você ganha controle às custas do gerenciamento fácil, que é exatamente o que o RDS oferece - a Amazon lida com backups, manutenção, alta disponibilidade etc e você acaba de obter um ponto de extremidade do MySQL.

Como ceejayoz apontou em seu comentário, o acima não é para dizer que as ferramentas de gerenciamento de configuração são inúteis - eu pessoalmente sou fã de Puppet - você só precisa escolher a ferramenta certa para o seu ambiente. Puppet é incrível em fazer o gerenciamento no nível do sistema operacional. O CloudFormation é incrível no gerenciamento de seus serviços da Amazon. Coloque as duas tecnologias juntas e você terá um conjunto abrangente de ferramentas que podem gerenciar toda a sua infraestrutura.

    
por 10.04.2014 / 23:10
3

Você não tem opções com o RDS. Todo o gerenciamento é tratado por você. Se você precisar de mais energia no banco de dados, use o EC2 e instale o seu próprio.

    
por 10.04.2014 / 22:19
1

Com o Salt você pode usar o módulo boto_rds , mas, como outros apontaram, não espere o mesmo nível de controle que você teria sobre um banco de dados MySQL auto-gerenciado, veja link

    
por 21.03.2016 / 21:07