0Pricing
Ansible Academy · บทเรียน

ไฟล์รายการโฮสต์แบบ INI เทียบกับ YAML

เขียนโฮสต์ในรูปแบบรายการทั้งสองแบบ

ไฟล์รายการโฮสต์แบบ INI เทียบกับ YAML เป็นบทเรียน Ansible Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Ansible Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Ansible Academy มีบทเรียนทั้งหมด 4 บทเรียน

รายการโฮสต์คืออะไร

inventory คือไฟล์ที่แสดงรายชื่อโฮสต์ที่ Ansible สามารถจัดการได้ หากไม่มีรายชื่อโฮสต์ ก็ไม่มีสิ่งใดให้ทำงานอัตโนมัติ

รูปแบบที่รองรับสองแบบ

Ansible อ่านรายการโฮสต์ได้สองรูปแบบ ได้แก่รูปแบบ INI แบบดั้งเดิมและรูปแบบ YAML ที่มีโครงสร้าง คุณเลือกใช้รูปแบบใดรูปแบบหนึ่งต่อไฟล์

รายการโฮสต์ INI ที่ง่ายที่สุด

ในรูปแบบ INI การเริ่มต้นต้องมีเพียงโฮสต์หนึ่งเครื่องต่อบรรทัดเท่านั้น ไฟล์นี้สามารถจัดการเซิร์ฟเวอร์เว็บสองเครื่องได้แล้ว

web1.example.com
web2.example.com

กลุ่ม INI ในวงเล็บเหลี่ยม

ส่วนหัวของกลุ่ม INI อยู่ในวงเล็บเหลี่ยม และโฮสต์ทุกเครื่องที่อยู่ด้านล่างจะเป็นสมาชิกของกลุ่มนั้นจนกว่าจะพบส่วนหัวถัดไป

[web]
web1.example.com
web2.example.com

สิ่งเดียวกันใน YAML

รูปแบบ YAML ซ้อนทุกอย่างไว้ใต้คีย์ระดับบนสุดที่ชื่อ all จากนั้นจึงเป็นกลุ่มและโฮสต์ มีรายละเอียดมากกว่า แต่ชัดเจนกว่าเมื่อระบบมีขนาดใหญ่

all:
  children:
    web:
      hosts:
        web1.example.com:
        web2.example.com:

โฮสต์ YAML ลงท้ายด้วยโคลอน

โฮสต์แต่ละเครื่องใน YAML เป็นคีย์ของการแมป จึงลงท้ายด้วยโคลอนและมีค่าว่าง ค่าว่างนั้นสามารถใช้เก็บตัวแปรได้ในภายหลัง

hosts:
  db1.example.com:

ชี้ Ansible ไปยังไฟล์

บอกคำสั่งว่าจะใช้รายการโฮสต์ใดด้วยตัวเลือก -i หากไม่ระบุ Ansible จะใช้ /etc/ansible/hosts เป็นทางเลือกสำรอง

ansible all -i inventory.ini --list-hosts

ตรวจสอบสิ่งที่ Ansible มองเห็น

เรียกใช้ --list-hosts เพื่อยืนยันว่าไฟล์ของคุณถูกแยกวิเคราะห์และแสดงโฮสต์ตามที่คาดไว้ นี่เป็นการตรวจสอบเบื้องต้นที่ดีมาก

ansible web -i inventory.yml --list-hosts

กลุ่ม all มีให้อัตโนมัติ

โฮสต์ทุกเครื่องที่คุณระบุจะเข้าร่วมกลุ่มในตัว all โดยอัตโนมัติ เลือกกลุ่มนี้เพื่อทำงานกับโฮสต์ทั้งหมดในระบบพร้อมกัน

ansible all -i inventory.ini -m ping

ใช้ INI กับรายการเล็ก ใช้ YAML กับรายการใหญ่

เลือกใช้ INI สำหรับรายการแบบเรียบง่ายที่ต้องการความรวดเร็ว และเลือก YAML เมื่อจำเป็นต้องมีกลุ่มซ้อนกันหรือมีตัวแปรจำนวนมาก

ใส่ใจกับนามสกุลไฟล์

Ansible เดาตัวแยกวิเคราะห์จากเนื้อหาได้ แต่การใช้นามสกุลที่ชัดเจน เช่น .ini หรือ .yml จะช่วยให้เพื่อนร่วมทีมและเครื่องมือแก้ไขทำงานได้สะดวก

ตรวจสอบความเข้าใจอย่างรวดเร็ว

คุณกำลังเขียนโฮสต์ในรูปแบบรายการโฮสต์ YAML โฮสต์แต่ละเครื่องจะปรากฏอย่างไร

ทบทวน

inventory แสดงรายชื่อโฮสต์ของคุณในรูปแบบ INI หรือ YAML โดย INI มีโครงสร้างแบนและรวดเร็ว ส่วน YAML ซ้อนอยู่ใต้ all เพื่อรองรับโครงสร้างที่หลากหลายกว่า 📋

คำถามที่พบบ่อย

บทเรียน “ไฟล์รายการโฮสต์แบบ INI เทียบกับ YAML” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ไฟล์รายการโฮสต์แบบ INI เทียบกับ YAML” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Ansible Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Ansible Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ไฟล์รายการโฮสต์แบบ INI เทียบกับ YAML”

เขียนโฮสต์ในรูปแบบรายการทั้งสองแบบ คุณปฏิบัติ Ansible Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Ansible Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Ansible Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “ไฟล์รายการโฮสต์แบบ INI เทียบกับ YAML” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Ansible Academy นี้ได้ไหม

ได้ บทเรียน Ansible Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. ไฟล์รายการโฮสต์แบบ INI เทียบกับ YAML
  2. การจัดกลุ่มโฮสต์: web, db และ app
  3. กลุ่มซ้อนกันและคีย์เวิร์ด children
  4. ตัวแปรโฮสต์และกลุ่มในรายการโฮสต์
← กลับไปที่ Ansible Academy