automation featured image

Sådan automatiseres Canvas LMS-installation med Ansible

I artiklen Sådan installeres Canvas LMS på Ubuntu 22.04 Jeg leverede trin til at installere open source Canvas-læringsstyringssystemet fra Github-lageret på din egen server. Men hvem ønsker at skrive alle disse kommandoer i terminalen manuelt? Og hvad adskiller os trods alt fra aber? Brug af værktøjer til automatisering gør!

Scriptet nedenfor automatiserer Canvas LMS-implementering på Ubuntu 22.04 ved hjælp af Ansible konfigurationsstyringsværktøj.

Before you begin installation check out our Canvas LMS hosting service. You can start using the LMS right away without need to manage own servers.

Sådan bruger du Ansible til at automatisere Canvas LMS-installation

Forbered serveren

Kom i gang ved at installere Ansible og Git på din server.

$ sudo apt install ansible git

Klon depotet med Canvas LMS installationsscript

Klon lærreds mulige installation repository fra Github.

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

Opret inventar til Ansible

Create an Ansible inventory file from the file “production.example” and replace web_server_ip, db_server_ip, redis_server_ip med IP-adresser eller værtsnavne på dine servere.

$ cp production.example production
$ vim production

Hvis du installerer på lokal vært du kan sætte noget som dette i inventarfilen:

[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"

Ændre variabler

Kopier og rediger derefter variabelfilen:

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

Variablefilen er selvforklarende, men her er et eksempel, hvis du stadig er i tvivl.

variables file for ansible playbook
Variable fil til Ansible playbook

Kør Ansible playbook for at installere open source Canvas LMS-systemet

Når du er færdig med inventar og variabler, kan du endelig køre playbook, som gør alt arbejdet med at installere Canvas LMS på din server. Nogle af opgaverne i legebogen, som f.eks montering af garn og lærred kompilere aktiver opgave tager anstændig tid at fuldføre, så tag en 10-15 minutters pause fra computeren og lad Ansible klare opgaven.

$ 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

I stedet for at køre en komplet installation kan du kun installere webserver-, databaseserver- eller redis-serverkomponenter individuelt ved at køre webservers.yml, dbservers.yml eller redis.yml playbooks.

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

Resumé: automatisering gør livet lettere!

Manuel installation af open source Canvas LMS-systemet er tidskrævende og udsat for fejl. Brug automatiseringsværktøjer som bash-scripts, Python og Ansible til at frigøre dig selv fra at skrive kommandoer i terminal igen og igen!