automation featured image

როგორ მოვახდინოთ Canvas LMS ინსტალაციის ავტომატიზაცია Ansible-ით

სტატიაში როგორ დააინსტალიროთ Canvas LMS Ubuntu 22.04-ზე მე მივაწოდე ნაბიჯები ღია კოდის Canvas სწავლის მართვის სისტემის დასაინსტალირებლად Github საცავიდან თქვენს საკუთარ სერვერზე. მაგრამ ვის სურს ხელით ჩაწეროს ყველა ეს ბრძანება ტერმინალში? და ბოლოს და ბოლოს რითი განვსხვავდებით მაიმუნებისგან? ავტომატიზაციის ხელსაწყოების გამოყენება აკეთებს!

ქვემოთ მოცემული სკრიპტი ავტომატიზირებს Canvas LMS-ის დანერგვას Ubuntu 22.04-ზე Ansible კონფიგურაციის მართვის ხელსაწყოს გამოყენებით.

Before you begin installation check out our Canvas LMS ჰოსტინგის სერვისი. You can start using the LMS right away without need to manage own servers.

როგორ გამოვიყენოთ Ansible ტილო LMS-ის ავტომატიზაციისთვის

მოამზადეთ სერვერი

დაიწყეთ Ansible და Git-ის დაინსტალირებით თქვენს სერვერზე.

$ sudo apt install ansible git

კლონირეთ საცავი Canvas LMS ინსტალაციის სკრიპტით

კლონი ტილოების ინსტალაცია საცავი Github-დან.

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

შექმენით ინვენტარი Ansible-სთვის

Create an Ansible inventory file from the file “production.example” and replace web_server_ip, db_server_ip, redis_server_ip თქვენი სერვერების IP მისამართებით ან ჰოსტების სახელებით.

$ cp production.example production
$ vim production

თუ თქვენ დააინსტალირეთ ლოკალჰოსტი შეგიძლიათ განათავსოთ მსგავსი რამ ინვენტარიზაციის ფაილში:

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

ცვლადების შეცვლა

შემდეგ დააკოპირეთ და შეცვალეთ ცვლადების ფაილი:

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

ცვლადების ფაილი თავისთავად ახსნილია, მაგრამ აქ არის მაგალითი იმ შემთხვევაში, თუ ჯერ კიდევ გაქვთ ეჭვი.

variables file for ansible playbook
ცვლადების ფაილი Ansible სათამაშო წიგნისთვის

გაუშვით Ansible playbook ღია კოდის Canvas LMS სისტემის დასაყენებლად

როდესაც დაასრულებთ ინვენტარს და ცვლადებს, საბოლოოდ შეგიძლიათ გაუშვათ სათამაშო წიგნი, რომელიც ასრულებს ყველა სამუშაოს Canvas LMS-ის ინსტალაციას თქვენს სერვერზე. სათამაშო წიგნის ზოგიერთი დავალება, მაგ ძაფის მონტაჟი და ტილო კომპილირებული აქტივები დავალების შესრულებას ღირსეული დრო სჭირდება, ამიტომ 10-15 წუთით შეისვენეთ კომპიუტერთან და მიეცით Ansible-ს სამუშაოს შესრულება.

$ 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

სრული ინსტალაციის ნაცვლად შეგიძლიათ დააინსტალიროთ მხოლოდ ვებ სერვერი, მონაცემთა ბაზის სერვერი ან redis სერვერის კომპონენტები ინდივიდუალურად webservers.yml, dbservers.yml ან redis.yml პლებუკების გაშვებით.

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

რეზიუმე: ავტომატიზაცია აადვილებს ცხოვრებას!

ღია კოდის Canvas LMS სისტემის ხელით ინსტალაცია შრომატევადია და მიდრეკილია შეცდომებისკენ. გამოიყენეთ ავტომატიზაციის ხელსაწყოები, როგორიცაა bash სკრიპტები, Python და Ansible, რათა გათავისუფლდეთ ტერმინალში ბრძანებების განმეორებით აკრეფისგან!