โครงสร้างไดเรกทอรีที่แนะนำ
ดูว่า Playbook รายการโฮสต์ และ vars ควรอยู่ที่ใด
โครงสร้างไดเรกทอรีที่แนะนำ เป็นบทเรียน Ansible Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Ansible Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Ansible Academy มีบทเรียนทั้งหมด 4 บทเรียน
เหตุใดโครงสร้างการจัดวางจึงสำคัญ
เมื่อโครงการเติบโต ไฟล์ที่กระจัดกระจายจะกลายเป็นความยุ่งเหยิงอย่างรวดเร็ว โครงสร้างไดเรกทอรีมาตรฐานจะบอกทีมของคุณได้อย่างชัดเจนว่าทุกอย่างอยู่ที่ใด 📁
จุดเริ่มต้น site.yml
ตามธรรมเนียมแล้ว site.yml คือเพลย์บุ๊กระดับบนสุดที่เชื่อมโครงสร้างพื้นฐานทั้งหมดของคุณเข้าด้วยกันและรวมส่วนที่เหลือเข้ามา
# site.yml
- import_playbook: webservers.yml
- import_playbook: dbservers.ymlสินค้าคงคลังอยู่ที่ระดับราก
ไฟล์สินค้าคงคลังของคุณ (หรือไดเรกทอรี) อยู่ใกล้ระดับบนสุด เพื่อให้เพลย์บุ๊กที่อยู่ข้าง ๆ รู้เสมอว่าตนจัดการโฮสต์ใด
myproject/
inventory
site.ymlเพลย์บุ๊กแยกตามหน้าที่
แยกเพลย์ขนาดใหญ่ออกเป็นไฟล์ที่เน้นหน้าที่ เช่น webservers.yml และ dbservers.yml แล้วเชื่อมไฟล์เหล่านั้นเข้าด้วยกันจาก site.yml
ไดเรกทอรี group_vars
ไดเรกทอรี group_vars เก็บตัวแปรที่ใช้กับกลุ่มโฮสต์ทั้งกลุ่ม โดยโหลดโดยอัตโนมัติตามชื่อกลุ่ม
group_vars/
webservers.yml
dbservers.ymlไดเรกทอรี host_vars
ไดเรกทอรี host_vars ทำสิ่งเดียวกันกับเครื่องแต่ละเครื่อง โดยมีไฟล์หนึ่งไฟล์ที่ตั้งชื่อตามโฮสต์แต่ละรายการ
host_vars/
web01.example.com.ymlไดเรกทอรี roles
ระบบอัตโนมัติที่นำกลับมาใช้ใหม่ได้จะอยู่ใต้ไดเรกทอรี roles Ansible จะค้นหาที่นี่ก่อนเมื่อเพลย์อ้างอิง role ด้วยชื่อ
roles/
common/
nginx/ไลบรารีกำหนดเองและปลั๊กอิน
โฟลเดอร์ library เก็บโมดูลกำหนดเอง ส่วน module_utils หรือ filter_plugins ใช้เก็บโค้ดตัวช่วยร่วมที่ Ansible ค้นพบโดยอัตโนมัติ
วาง ansible.cfg ไว้ใกล้ตัว
วาง ansible.cfg ไว้ที่ระดับรากของโครงการ Ansible จะโหลดการตั้งค่าจากไดเรกทอรีปัจจุบัน ทำให้การตั้งค่าแยกอยู่ภายในโครงการ
# ansible.cfg
[defaults]
inventory = ./inventory
roles_path = ./rolesที่เก็บเดียว เห็นภาพทั้งหมด
ด้วยโครงสร้างนี้ การโคลน git เพียงครั้งเดียวจะมอบเพลย์บุ๊ก สินค้าคงคลัง ตัวแปร และ role ให้เพื่อนร่วมทีมในโครงสร้างเดียวที่สอดคล้องกัน 🎯
โครงร่างทั้งหมด
นี่คือโครงร่างที่แนะนำตามเอกสารทางการ คุณควรจำโครงสร้างโดยรวม ไม่ใช่จำไฟล์ทุกไฟล์
myproject/
ansible.cfg
inventory
site.yml
group_vars/
host_vars/
roles/ตรวจสอบอย่างรวดเร็ว
ไฟล์ใดคือจุดเริ่มต้นระดับบนสุดตามธรรมเนียมสำหรับโครงการทั้งหมด
สรุปทบทวน
คุณได้เรียนรู้โครงสร้างมาตรฐานแล้ว: site.yml พร้อมสินค้าคงคลัง group_vars, host_vars และ roles ในที่เก็บเดียว โครงสร้างที่คาดเดาได้ช่วยให้ทีมของคุณขยายได้ ✅
คำถามที่พบบ่อย
บทเรียน “โครงสร้างไดเรกทอรีที่แนะนำ” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “โครงสร้างไดเรกทอรีที่แนะนำ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Ansible Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Ansible Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “โครงสร้างไดเรกทอรีที่แนะนำ”
ดูว่า Playbook รายการโฮสต์ และ vars ควรอยู่ที่ใด คุณปฏิบัติ Ansible Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Ansible Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Ansible Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “โครงสร้างไดเรกทอรีที่แนะนำ” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Ansible Academy นี้ได้ไหม
ได้ บทเรียน Ansible Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- โครงสร้างไดเรกทอรีที่แนะนำ
- ไดเรกทอรี group_vars และ host_vars
- แยก Playbook ด้วย import และ include
- การตั้งชื่อ คอมเมนต์ และรูปแบบที่ขยายได้