โลโก้ Moodle
อันดับ 25 ใน Top 100 E-learning และการศึกษาGPLv3 (โอเพนซอร์ส)

Moodle คืออะไร และวิธีติดตั้งบน Cloud Server

Moodle คือระบบจัดการเรียนการสอนออนไลน์ที่สถาบันการศึกษาทั่วโลกใช้มากที่สุด จุดที่ต้องวางแผนให้ดีที่สุดคือช่วงสอบออนไลน์ ซึ่งผู้เรียนหลายร้อยหรือหลายพันคนเข้าระบบพร้อมกันในเวลาเดียว

ติดตั้งบนเซิร์ฟเวอร์เองได้
ได้
สเปกเริ่มต้นที่แนะนำ
2 vCPU · RAM 4 GB
ไลเซนส์
GPLv3 (โอเพนซอร์ส)
เว็บทางการ
เปิดเว็บไซต์
สร้าง Cloud Server เดี๋ยวนี้
  • ISO/IEC 27001
  • ISO 22301
  • ISO 20000-1
  • CSA-STAR

Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย

Moodle คืออะไร

Moodle ให้ครูผู้สอนสร้างรายวิชา อัปโหลดสื่อ มอบหมายงาน สร้างแบบทดสอบ และให้คะแนนได้ในระบบเดียว ผู้เรียนเข้าเรียนและส่งงานผ่านเว็บหรือแอปมือถือ

สิ่งที่ทำให้ Moodle เป็นมาตรฐานของสถาบันการศึกษาคือความยืดหยุ่นและปลั๊กอินจำนวนมาก ทั้งการเชื่อมกับระบบทะเบียน การตรวจการคัดลอกงาน และการเชื่อมกับระบบประชุมออนไลน์

ข้อควรวางแผนที่สำคัญที่สุดคือภาระช่วงสอบ เพราะการทำแบบทดสอบพร้อมกันจำนวนมากสร้างการเขียนฐานข้อมูลถี่มาก สเปกที่พอสำหรับวันเรียนปกติมักไม่พอในวันสอบ

แผนผังการวางระบบ Moodle บน Cloud Server หนึ่งเครื่องที่ Data Center ในประเทศไทย ผู้ใช้เข้าถึงผ่านไฟร์วอลล์ที่เปิดเฉพาะพอร์ต 443, 80, 3306 / 6379 ตัว Moodle และข้อมูลอยู่บนเครื่องเดียวกัน เริ่มต้นที่ 2 vCPU แรม 4 GB และมีสำเนาสำรองเขียนออกไปเก็บอีกไซต์หนึ่ง
Moodle ทำงานบน Cloud Server เครื่องเดียวได้ครบ เปิดเฉพาะพอร์ตที่จำเป็น ข้อมูลและสำเนาสำรองอยู่ใน Data Center ในประเทศไทย

ความสามารถเด่นของ Moodle

จัดการรายวิชาครบวงจร

สื่อการสอน งานมอบหมาย แบบทดสอบ และสมุดคะแนนในระบบเดียว

แบบทดสอบหลายรูปแบบ

สร้างข้อสอบหลายชนิด สุ่มข้อ และตั้งเวลาสอบได้

รองรับผู้เรียนจำนวนมาก

ออกแบบให้ขยายได้ทั้งการแยกฐานข้อมูลและการเพิ่มเครื่องเว็บ

ปลั๊กอินจำนวนมาก

เชื่อมกับระบบทะเบียน ระบบประชุมออนไลน์ และเครื่องมือตรวจงาน

รองรับหลายภาษา

ใช้ภาษาไทยได้ครบทั้งส่วนผู้เรียนและผู้สอน

ใช้ Moodle ทำอะไรได้บ้าง

  • มหาวิทยาลัยและโรงเรียนที่จัดการเรียนการสอนออนไลน์
  • ฝ่ายฝึกอบรมขององค์กรที่ต้องอบรมพนักงานและเก็บผลการเรียน
  • สถาบันที่ต้องจัดสอบออนไลน์พร้อมกันจำนวนมาก
  • หน่วยงานที่ต้องเก็บหลักฐานการอบรมตามข้อกำหนด

สเปก Cloud Server ที่แนะนำ

แผนภาพเทียบสเปก Cloud Server สำหรับ Moodle 3 ระดับ เริ่มจาก 2 vCPU แรม 4 GB ดิสก์ NVMe 80 GB ไปจนถึง 8 vCPU ขึ้นไป แรม 16 GB ขึ้นไป ดิสก์ NVMe 500 GB ขึ้นไป โดยเทียบขนาดแยกตามแต่ละคอลัมน์
เริ่มจากระดับที่ตรงกับการใช้งานตอนนี้ แล้วเพิ่ม CPU และ RAM ทีหลังได้บนเครื่องเดิม
ระดับการใช้งานvCPURAMDisk
เริ่มต้นผู้เรียนพร้อมกันไม่เกิน 100 คน วันเรียนปกติ2 vCPU4 GBNVMe 80 GB
แนะนำผู้เรียนพร้อมกัน 100 ถึง 500 คน4 vCPU8 GBNVMe 200 GB
ช่วงสอบสอบพร้อมกันหลักพันคน ควรแยกเครื่องฐานข้อมูลและใช้ Redis8 vCPU ขึ้นไป16 GB ขึ้นไปNVMe 500 GB ขึ้นไป

ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ

วิธีติดตั้ง Moodle บน Cloud Server ของ THAI DATA CLOUD

ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server

สิ่งที่ต้องเตรียม

  • PHP 8.2 ขึ้นไปพร้อมส่วนขยายที่ Moodle กำหนด
  • MariaDB 10.6 ขึ้นไป หรือ PostgreSQL 14 ขึ้นไป
  • Nginx หรือ Apache พร้อมใบรับรอง SSL
  • Redis สำหรับแคชและ Session เมื่อมีผู้ใช้จำนวนมาก

ทดสอบบน Ubuntu Server 24.04 LTS

  1. 1

    ติดตั้งบริการพื้นฐาน

    sudo apt update
    sudo apt -y install nginx mariadb-server redis-server \
      php8.3-fpm php8.3-mysql php8.3-xml php8.3-curl php8.3-zip php8.3-gd \
      php8.3-intl php8.3-mbstring php8.3-soap php8.3-redis unzip git
  2. 2

    สร้างฐานข้อมูล

    Moodle กำหนดชุดอักขระและการเรียงลำดับที่เฉพาะ ให้สร้างตามนี้เพื่อไม่ให้เจอปัญหาภายหลัง

    sudo mysql -e "CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
    sudo mysql -e "CREATE USER 'moodle'@'localhost' IDENTIFIED BY 'ChangeThisStrongPassword';"
    sudo mysql -e "GRANT ALL ON moodle.* TO 'moodle'@'localhost'; FLUSH PRIVILEGES;"
  3. 3

    ดึงโค้ดและสร้างโฟลเดอร์เก็บข้อมูล

    โฟลเดอร์ moodledata ต้องอยู่นอก Document root เสมอ เพราะเก็บไฟล์งานของผู้เรียนทั้งหมด

    cd /var/www
    sudo git clone -b MOODLE_405_STABLE https://github.com/moodle/moodle.git
    sudo mkdir -p /var/moodledata
    sudo chown -R www-data:www-data /var/www/moodle /var/moodledata
  4. 4

    ปรับค่า PHP ให้รองรับงานอัปโหลดและสอบ

    memory_limit = 512M
    upload_max_filesize = 200M
    post_max_size = 200M
    max_input_vars = 5000
    max_execution_time = 300
  5. 5

    ติดตั้งผ่านเบราว์เซอร์

    เปิดโดเมนแล้วทำตามตัวช่วย ระบุเส้นทาง moodledata ข้อมูลฐานข้อมูล และสร้างบัญชีผู้ดูแลระบบ

  6. 6

    ตั้งงานตามตารางของระบบ

    งานเบื้องหลังของ Moodle ทั้งการส่งอีเมล การสำรองรายวิชา และการประมวลผลคะแนนพึ่งงานนี้ทั้งหมด

    * * * * * sudo -u www-data php /var/www/moodle/admin/cli/cron.php > /dev/null
  7. 7

    เปิดแคชด้วย Redis

    ที่หน้าจัดการระบบ ให้ตั้งค่าให้ใช้ Redis เป็นที่เก็บแคชและ Session ซึ่งช่วยได้ชัดเจนช่วงที่มีผู้ใช้จำนวนมาก

ก่อนช่วงสอบควรเพิ่มสเปกล่วงหน้าและทดสอบด้วยการจำลองผู้ใช้จำนวนจริง ทีมงานของเราช่วยปรับสเปกชั่วคราวเฉพาะช่วงสอบได้

พอร์ตที่ต้องเปิดบน Firewall

พอร์ตโปรโตคอลใช้ทำอะไร
443TCPHTTPS สำหรับผู้เรียนและผู้สอน
80TCPHTTP และการต่ออายุใบรับรอง
3306 / 6379TCPฐานข้อมูลและ Redis (เปิดเฉพาะภายใน)

สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ

  • วางโฟลเดอร์ moodledata ไว้นอก Document root เพื่อไม่ให้ไฟล์งานถูกเข้าถึงโดยตรงจากเว็บ
  • บังคับ HTTPS ทั้งระบบเพราะมีข้อมูลผู้เรียนและคะแนน
  • เปิดการยืนยันตัวตนสองชั้นสำหรับผู้ดูแลระบบและผู้สอน
  • อัปเดต Moodle และปลั๊กอินตามรอบที่โครงการออกแพตช์ความปลอดภัย
  • สำรองฐานข้อมูลและโฟลเดอร์ moodledata ทุกวัน โดยเฉพาะช่วงเปิดภาคเรียน
  • ตั้งนโยบายเก็บข้อมูลผู้เรียนให้สอดคล้องกับ PDPA

ทำไมควรรัน Moodle บน Cloud Server ของ THAI DATA CLOUD

Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง

เพิ่มสเปกเฉพาะช่วงสอบแล้วลดกลับเมื่อจบ ทำให้ไม่ต้องจ่ายค่าเครื่องใหญ่ทั้งปีเพื่อรองรับไม่กี่สัปดาห์

ข้อมูลผู้เรียนอยู่ใน Data Center ในไทย สอดคล้องกับ PDPA และข้อกำหนดของสถาบัน

เก็บไฟล์สื่อการสอนขนาดใหญ่ไว้บน Object Storage เพื่อไม่ให้ดิสก์เต็มเมื่อคลังสื่อโต

แยกเครื่องฐานข้อมูลออกไปในวง Private Network ได้เมื่อจำนวนผู้เรียนเพิ่มขึ้น

คำถามที่พบบ่อยเกี่ยวกับ Moodle

ต้องใช้สเปกเท่าไหร่สำหรับสอบพร้อมกัน 1,000 คน

ควรเริ่มที่ 8 vCPU และ RAM 16 GB ขึ้นไป พร้อมแยกเครื่องฐานข้อมูลและเปิด Redis เพราะการทำแบบทดสอบสร้างการเขียนฐานข้อมูลถี่มาก และควรทดสอบจำลองผู้ใช้ก่อนวันสอบจริง

ทำไม Moodle ช้าในช่วงเปิดภาคเรียน

มักเกิดจากผู้ใช้จำนวนมากเข้าพร้อมกันขณะที่ยังไม่ได้เปิดแคช หรือฐานข้อมูลอยู่บนเครื่องเดียวกับเว็บและแย่งทรัพยากรกัน การเปิด Redis และแยกฐานข้อมูลช่วยได้ชัดเจน

เชื่อมกับระบบทะเบียนของสถาบันได้ไหม

ได้ผ่านปลั๊กอินการลงทะเบียนและการยืนยันตัวตน ทั้งการดึงข้อมูลจากฐานข้อมูลภายนอก การใช้ LDAP และมาตรฐาน SSO ซึ่งเป็นวิธีที่สถาบันส่วนใหญ่ใช้

สำรองข้อมูลอย่างไรให้กู้รายวิชาได้

Moodle มีระบบสำรองรายวิชาในตัวสำหรับกู้เฉพาะวิชา ควรใช้ควบคู่กับการสำรองฐานข้อมูลและโฟลเดอร์ moodledata ทั้งก้อน เพื่อรองรับทั้งกรณีกู้เฉพาะจุดและกู้ทั้งระบบ

ให้เราติดตั้ง Moodle ให้ฟรี บน Cloud Server ในไทย

แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด