Open EdX Adım Adım Kurulum Kılavuzu
İlk Open edX platform kurulumunu AWS EC2 Ubuntu Linux sunucu üzerinde nasıl oluşturacağınız, Open edX kurulum komut dosyalarını çalıştıracağınız ve yeni platformunuzun ayarları hakkında ayrıntılı adım adım kurulum kılavuzu.
Özet
Open edX Ironwood sürümü için güncel kurulum kılavuzu.
Bu kurulumun içeriği Open Edx’in “ Native Open edX Ubuntu 16.04 64 bit Installation ” yöntemine göredir. Open Edx proje dokümantasyonu kapsamlı bir bilgi birikimini varsayar. Bu makalede, Open edX platformunun kurulumunu daha erişilebilir ve daha kolay bir şekilde size sunmaktır.
Bu makalede, AWS EC2 üzerinde çalışan tek sunucu üzerinde hizmete hazır bir Open edX platform kurulumunu tamamen otomatik bir şekilde kuracağız. Hazırladığımız kurulum komut dosyasi (script) aşağıdaki Open edX modüllerini, gerekli tüm alt sistemleri ve tüm isteğe bağlı modülleri kurar:
- Learning Management System (LMS)
- Course Management System (CMS)
- Insights Analytics module & API
- Certificate Server (To generate digital course completion certificates)
- Course Discovery (To provide a comprehensive course search engine capability to learners)
- Ecommerce Server (for paid courses)
- Discussion Forum
- XQueue and RabbitMQ (manages asynchronous multi-tasking such as automatic computer source code graders)
Hazırladığımız kurulum komut dosyası (script) Open Edx platformunu AWS EC2 üzerindeki sunucuya kurar ve herhangi ekstra bir servise ihtiyaç duymaz. Bu komut dosyası tamamlandığında, tüm uygulama yazılımı kod tabanını / edx / içinde. /home/ubuntu/my-passwords.yml adresinde otomatik olarak oluşturulan güçlü parolaların bir listesini bulacaksınız. My-passwords.yml dosyasını home dizininizde tutmalısınız, daha sonraki işlemler ve kullanılan devops prosedürleri bu dosyaya ihtiyaç duyar ve bu konumda bulmayı bekler. Ayrıca, my-passwords.yml dosyasının bir kopyasını almalısınız. Bu dosyanın sahipliğini, grubunu veya izinlerini değiştirmeyin.
Kurulum Prosedürü
Open edX’in tek bir Ubuntu 16.04 64-bit sunucuya sıfırdan nasıl kurulacağı anlatılmaktadır.
- Yeni bir AWS EC2 sunucu oluşturun
- Ansible build komut satirini (script) çalıştırın
- Komut dosyasının çalıştığını doğrulayın
- Bir yönetici hesabı oluşturun
- Bir AWS AMI oluşturun
- LMS ve CMS’yi yapılandırma
- Hizmete Alma
Sunucu Gereksinimleri
Aşağıdaki sunucu gereksinimleri yüzlerce kayıtlı öğrenciyi tek bir sunucuda desteklemek için önerilir.
Not: MySQL, Memcache, Mongo, nginx ve tüm Open edX servislerini (LMS, Studio, Forumlar, ORA, vb.) Tek bir sunucuda çalıştıracaktır. Üretim yapılandırmalarında, bu hizmetlerin farklı sunucularda çalışmasını ve bir yük dengeleyici (load balancer) kullanılmasını öneririz. Üretim konfigürasyonları kurmak bu yazının kapsamı dışındadır. Boyle bir ihtiyaciniz olunca bizimle iletişime geçebilirsiniz.
Ubuntu 16.04 amd64 (oraclejdk gerekli). Ubuntu’nun 16.04 sürümü çalıştığı bilinmektedir.
Minimum 8GB terchien 12GB hafıza
En az bir 2.00GHz CPU veya EC2 birimi
Sunucu için en az 100 GB SSD disk
Uretim için en az AWS EC2 T2 veya T3 large ile baslanmasidir.
Yeni bir AWS EC2 sunucusu oluşturun
AWS konsolundan EC2 servisini secin Launch Instance bolumune tiklayin.
Ubuntu 16.04 64 bit imajını secin.
Sunucunuzun Boyutlandırılması
En az AWS EC2 t2.large veya t3.large secin
Sunucu Ayrıntıları
Subnetinizin public subnet ve Auto-Assign Public IP nin Enable olduğunu kontrol edin.
Depolama Alanı ekleme
En az 100 GB SSD alan secin.
TAG Secimi
Security Profile
Sunucu bağlantı noktası ayarlarını sunucunun kendisinden ayrı olarak yönetirsiniz. Genel olarak, bir bağlantı noktası güvenlik profili oluşturursunuz ve bu profili EC2 örneğinize atarsınız. Open edX standart kurulumun bir parçası olarak birçok port kullanır.
- SSH Kaynağı: Bu, SSH kullanarak EC2 örneğine bağlanmayı deneyebilecek olan IP adreslerini sınırlandırmak için sağlayabileceğiniz isteğe bağlı bir parametredir. Varsayılan olarak, bu parametre HERHANGİ IP adresinin bağlanmaya çalışmasına izin veren 0.0.0.0/0 olarak ayarlanmıştır. Bunu, siz ve ekibiniz için IP aralıkları ile sınırlandırarak sunucunuzun güvenliğini artırabilirsiniz.
- HTTPS: bu isteğe bağlı bir porttur. HTTPS protokolünü SSL / TLS şifrelemesi ile kurmayı planlıyorsanız bu bağlantı noktasını açmalısınız.
- Bu, 18000 – 18999 arasındaki tüm bağlantı noktalarını açar. Bu, Open edX uygulamaları, alt sistemler ve API’ler tarafından kullanılan bağlantı noktası aralığıdır.
Gözden Geçirin
Bir SSH anahtar çifti ayarlayın
Sunucunun çalıştığını kontrol edin
Sunucuyu hazırla
Ubuntu 16.04 64-bit sunucunuzu başlatın ve tam sudo ayrıcalıklarına sahip bir kullanıcı olarak oturum açın.
Ubuntu paket kaynaklarınızı güncelleyin:
sudo apt-get update -y sudo apt-get upgrade -y sudo reboot |
Kurulum
Kurulumu tamamlamak için birkaç komut dosyası çalıştıracaksınız. Yapacakları her şeyden haberdar olmanızı sağlamak için lütfen çalıştırmadan önce komut dosyalarının içeriğini okuyabilirsiniz. Komut dizileri, çalışan kullanıcının komutları sudo aracılığıyla root olarak çalıştırmasını gerektirir.
- OPENEDX_RELEASE değişkenini ayarlayın. Komutları çalıştırmadan önce OPENEDX_RELEASE değişkenini ayarlayarak Open edX sürümünü seçtiniz. Kullanabileceğiniz etiketler için bkz. EdX named_releases .
export OPENEDX_RELEASE=the-tag/you-want-to-install |
Örnek: export OPENEDX_RELEASE=open-release/ironwood.master
- Bir config.yml dosyası oluşturun . Bu dosya, LMS ve Studio’nun ana bilgisayar adını (ve gerekirse portunu) belirtir. Geçerli dizinde şöyle bir dosya oluşturun config.yml, şunun gibi:
# The host names of LMS and Studio. Don’t include the “https://” part: EDXAPP_LMS_BASE: “online.myeducation.org” EDXAPP_CMS_BASE: “studio.online.myeducation.org” |
- LMS ana makineniz ve Studio ana makinenizin aynı ana bilgisayar adı (farklı bağlantı noktalarında) olması veya Studio, LMS’nin bir alt etki alanı olmalıdır. Farklı bir konfigürasyona ihtiyacınız varsa, EDXAPP_SESSION_COOKIE_DOMAIN ayarlamanız da gerekebilir.
NOT: Open edX ve edX tescilli ticari markalardır. Daha fazla ayrıntı için edX Ticari Marka Politikası’na bakın . Kabul edilemez etki alanı adları için bazı örnekler : - DON’T: openedx.yourdomain.org
- DON’T: edx.yourdomain.org
- DON’T: openedxyourdomain.org
- DON’T: yourdomain-edx.com
- Bootstrap ‘kurulumu:
wget https://raw.githubusercontent.com/edx/configuration/$OPENEDX_RELEASE/util/install/ansible-bootstrap.sh -O – | sudo bash |
Örnek:
wget https://raw.githubusercontent.com/edx/configuration/$OPENEDX_RELEASE/util/install/ansible-bootstrap.sh -O – | sudo -H bash
- Şifreleri rastgele yap. Bu adım isteğe bağlıydı, ancak Ironwood’dan itibaren gereklidir. Bu daha eski bir kurulumun yerini alacaksa, my-passwords.yml dosyanızı bu kurulumdan kopyalayın. Eğer bu yeni bir kurulumsa:
wget https://raw.githubusercontent.com/edx/configuration/$OPENEDX_RELEASE/util/install/generate-passwords.sh -O – | bash |
Örnek:
wget https://raw.githubusercontent.com/edx/configuration/$OPENEDX_RELEASE/util/install/generate-passwords.sh -O – | bash
- ÖNEMLİ: Oluşturulan my-passwords.yml dosyasını güvenli bir yere kaydettiğinizden emin olun. Servislerinize doğrudan erişmeniz gerekiyorsa, bu kimlik bilgilerine ihtiyacınız olacaktır. Parola oluşturma ve diğer güvenlik önlemleriyle ilgili daha fazla ayrıntı burada: Varsayılan Yapılandırma Parolalarını Geçersiz Kılma ve Açıklanan Servisleri Doğrulama .
- Open edX’i kurun. Bu biraz zaman alabilir, belki bir – iki saat. (Not: Ginkgo ve önceki sürümlerde bu dosyaya sandbox.sh adı verildi):
wget https://raw.githubusercontent.com/edx/configuration/$OPENEDX_RELEASE/util/install/native.sh -O – | bash |
Örnek:
wget https://raw.githubusercontent.com/edx/configuration/$OPENEDX_RELEASE/util/install/native.sh -O – | bash > install.out
- Her şeyin düzgün çalışması için sunucunuzu yapılandırmanız, örneğin LMS_ROOT_URL ayarını yapmanız gerekir. Yükleme tamamlandıktan sonra, hem LMS hem de CMS için açılış sayfalarını açabilmelisiniz.
Ayrıca, aşağıdaki admin komut satırı komut dosyasını kullanarak, hangi Open edX modüllerinin çalıştığını da görebilirsiniz:
sudo /edx/bin/supervisorctl status
Bir yönetici hesabı oluşturun
AMI’nizi oluşturmadan önce, bir root / admin hesabı oluşturarak kendinizi gelecekteki yoğun çalışmalardan kurtarabilirsiniz.
# create the admin account
cd /edx/app/edxapp/edx-platform
sudo -u www-data /edx/bin/python.edxapp ./manage.py lms –settings aws createsuperuser
# Optional: add the ubuntu user to a couple of the Open edX Linux groups. This will greatly simplify working with Open edX system files.
sudo usermod -a -G www-data ubuntu
sudo usermod -a -G edxapp ubuntu
AMI Imaji oluşturun
LMS ve Studio Uygulamalarınızı Yapılandırma
Yukleme / edx / app / edxapp / içinde yer alan ve örneğin platformunuzun adı ve etki alanı adı gibi Open edX platformunuz için en önemli Django uygulama parametrelerini içeren dört json dosyası oluşturur. Ne yazık ki, dosyalar kullanıcı dostu değildir.
Bazı temel yapılandırma kuralları
- Tüm platform için sadece dört yapılandırma dosyası var. Bunlar / edx / app / edxapp içinde bulunur.
- Lms.auth.json ve cms.auth.json öğelerini düzenlemekten kaçının. Bu iki dosya, yerel kurulum prosedürü sırasında Open edX platformunun oluşturduğu düzinelerce şifreyi içerir. SMTP e-posta hesabınızın şifresini ayarlamaktan başka, bu dosyalardan herhangi birini düzenlemeniz için hiçbir neden yoktur. Orijinal şifre değerlerinin bir kopyası ~ / my-passwords.yml dosyasında bulunur.
Bu dört json dosyasındaki herhangi bir değişiklik, platformu yeniden başlattıktan sonra etkili olur. Aşağıdaki komut satırı talimatları platformunuzu yeniden başlatacak
# These are the commands for restarting the LMS and CMS beginning with Gingko
/edx/bin/supervisorctl restart lms
/edx/bin/supervisorctl restart cms
# If you’re running a previous version of Open edX then use this command instead
/edx/bin/supervisorctl restart edxapp:
/edx/bin/supervisorctl restart edxapp_worker:
Bir MOOC için gereken yapılandırma dosyaları aşağıda verilmiştir. Örnekler için Google da arama yapabilirsiniz.
- lms.env.json
- cms.env.json
Onemli edX Platform Klasörleri
/edx/app | tüm edx modülleri için uygulama yazılımı dosyaları |
/edx/app/edx_ansible/edx_ansible/playbooks | tüm Ansible playbooks. Ansible’ın nasıl çalıştığıni, bu klasör yapısı hakkında daha fazla şey öğrenerek bilgi edinebilirsiniz |
/edx/app/edx_ansible | server-vars.yml ‘in depolanacağı yer |
/edx/app/edxapp/edx-platform/themes | uygulama teması ana klasörü. Bu klasörleri keşfetmek, edX’in tema mimarisinin nasıl çalıştığını anlamanıza yardımcı olacak |
/edx/bin | Tüm pip, ansible ve bash admin yardımcı programları için “home” klasörü |
/edx/etc | tüm edx modülleri için konfigürasyon dosyaları |
/edx/var | tüm veriler (uygulama, günlükler, vb.) |
Eline sağlık, Türkçe benzersiz bir içerik olmuş.