Drupal + Rex
-
Upload
paulograca -
Category
Technology
-
view
149 -
download
0
Transcript of Drupal + Rex
REXREX
Paulo Graça - Novembro 2015 - Drupal Meetup
X
DevOps...
O que é que isto tem a ver com Drupal???
O que é que isto tem a ver com Drupal???
Soluções automação (Opensource)
● Rex (Perl) - em uso desde 2014
● Puppet (Ruby) ● Chef (Ruby)● Salt (Python)● Ansible (Python)
REX - nome
Etimologia:Rei - em latim.(Tyrannosaurus rex - Rei dos lagartos tiranos)
(R)?ex - Remote Execution
Vantagens
● usa SSH, não necessita de 1 agente na máquina
● fácil de integrar, sem conflitos● fácil de usar e extensível● fácil de aprender - Perl simplificado
Fácil de aprender
Usa SSH + Fácil integrar
Extensível e fácil de usarCMDB - YamlMysqlJoomlaOTRSFirewall/IptablesJenkinsCloud + Docker + VirtualBox
Comandos:● Grupos + Ambientes● Templating● Rsync● Run● Cron● Service
Exemplo - Perl Simplificado (1/6)Bash Linux
# df -h
Exemplo - Perl Simplificado (2/6)
Filesystem Size Used Avail Use% Mounted on/dev/mapper/Vol..._root 303G 73G 216G 26% /tmpfs 3,8G 0 3,8G 0% /dev/shm
/dev/xvda1 485M 75M 385M 17% /boot
# Disk Free - Human Readable# df -h
Exemplo - Perl Simplificado (3/6)use Rex -feature => ['1.0'];
desc "Get Disk Free";task "disk_free", sub { my $output = run "df -h"; say $output;
};
Exemplo - Perl Simplificado (4/6)# Rexfile exampleuse Rex -feature => ['1.0'];
task "disk_free", sub { say run "df -h";
};
Exemplo - Perl Simplificado (5/6)
Filesystem Size Used Avail Use% Mounted on/dev/mapper/Vol..._root 303G 73G 216G 26% /tmpfs 3,8G 0 3,8G 0% /dev/shm
/dev/xvda1 485M 75M 385M 17% /boot
Bash Linux# rex disk_free
Exemplo - Perl Simplificado (6/6)
Filesystem Size Used Avail Use% Mounted on/dev/mapper/Vol..._root 303G 73G 216G 26% /tmpfs 3,8G 0 3,8G 0% /dev/shm
/dev/xvda1 485M 75M 385M 17% /boot
Bash Linux# rex -H www.drupal.pt disk_free
Vi drupal.pt, então isto já é Drupal???
Vi drupal.pt, então isto já é Drupal???
● Providenciar recursos de Virtualização
● Deployment + Continuous delivery
● Testing
● Sincronização de configurações
Exemplos de utilização
Exemplos de utilização - Sincronização de configurações
● Configurações ambientes (TESTE <> PRODUÇÃO)
● Sistema: Postfix, Crontab, Iptables, Logrotate, SSH, etc…
● Aplicações: Apache (VHosts), PHP, Mysql, etc...
Exemplos de utilização - Execução de tarefas
● Setup do serviço
● Update settings
● Build e Deploy de software
Ei!!! então e o Drupal???Ei!!! então e o Drupal???
Vantagens para o Drupal
● Solução sem dependências/impacto para o sistema, além do agente SSH
● Pode executar instruções Drush remotamente (run “drush cc all”;)
● Facilitar o processo de deployment de alterações (Ex: Features+Drush)
● Reduz-se o risco de ocorrência de falhas por inconsistências entre sistemas
(exemplo: configurações PHP)
● Deployment de distribuições custom
“automate everything”
Questões?Obrigado!
google.com/+PauloGraça