automation featured image

Como automatizar a instalação do Canvas LMS com Ansible

No artigo Como instalar o Canvas LMS no Ubuntu 22.04 Forneci etapas para instalar o sistema de gerenciamento de aprendizagem Canvas de código aberto do repositório Github em seu próprio servidor. Mas quem quer digitar todos esses comandos manualmente no terminal? E afinal, o que nos difere dos macacos? Usar ferramentas para automação sim!

O script abaixo automatiza a implantação do Canvas LMS no Ubuntu 22.04 usando a ferramenta de gerenciamento de configuração Ansible.

Before you begin installation check out our Serviço de hospedagem Canvas LMS. You can start using the LMS right away without need to manage own servers.

Como usar o Ansible para automatizar a instalação do Canvas LMS

Prepare o servidor

Comece instalando Ansible e Git em seu servidor.

$ sudo apt install ansible git

Clone o repositório com o script de instalação do Canvas LMS

Clone instalação ansible do canvaslms repositório do Github.

$ git clone https://github.com/EugeneWHZ/canvaslms-ansible-installation.git 
$ cd canvaslms-ansible-installation

Criar inventário para Ansible

Create an Ansible inventory file from the file “production.example” and replace web_server_ip, db_server_ip, redis_server_ip com endereços IP ou nomes de host de seus servidores.

$ cp production.example production
$ vim production

Se você estiver instalando no host local você pode colocar algo assim no arquivo de inventário:

[webservers]
localhost:22 ansible_connection=local ansible_python_interpreter="/usr/bin/env python3"

[dbservers]
localhost:22 ansible_connection=local ansible_python_interpreter="/usr/bin/env python3"

[redisservers]
localhost:22 ansible_connection=local ansible_python_interpreter="/usr/bin/env python3"

Modificar variáveis

Em seguida, copie e edite o arquivo de variáveis:

$ cp roles/common/vars/main.yml.example roles/common/vars/main.yml
$ vim roles/common/vars/main.yml

O arquivo de variáveis ​​é autoexplicativo, mas aqui vai um exemplo caso você ainda tenha dúvidas.

variables file for ansible playbook
Arquivo de variáveis ​​para o playbook Ansible

Execute o manual Ansible para instalar o sistema Canvas LMS de código aberto

Quando terminar o inventário e as variáveis, você pode finalmente executar o manual que faz todo o trabalho de instalação do Canvas LMS em seu servidor. Algumas das tarefas do manual, como instalação de fio e ativos de compilação de tela A tarefa leva um tempo razoável para ser concluída, então faça uma pausa de 10 a 15 minutos no computador e permita que o Ansible faça o trabalho.

$ ansible-playbook -i production master.yml

If the Ansible playbook fails on some step then you need to troubleshoot the issue and re-start playbook from the failed task using ‘–start-at-task=”task name”‘ runtime variable. For example:

$ ansible-playbook -i production --start-at-task="install yarn" master.yml

Em vez de executar a instalação completa, você pode instalar apenas componentes de servidor web, servidor de banco de dados ou servidor redis individualmente executando os playbooks webservers.yml, dbservers.yml ou redis.yml.

$ ansible-playbook -i production webservers.yml
$ ansible-playbook -i production dbservers.yml
$ ansible-playbook -i production redis.yml

Resumo: a automação facilita a vida!

A instalação manual do sistema Canvas LMS de código aberto é demorada e sujeita a erros. Utilize ferramentas de automação como scripts bash, Python e Ansible para se livrar da necessidade de digitar comandos no terminal repetidamente!