กลุ่มซ้อนกันและคีย์เวิร์ด children
สร้างลำดับชั้นของกลุ่มย่อย
กลุ่มซ้อนกันและคีย์เวิร์ด children เป็นบทเรียน DevOps Bootcamp ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน DevOps Bootcamp และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส DevOps Bootcamp มีบทเรียนทั้งหมด 4 บทเรียน
กลุ่มภายในกลุ่ม
บางครั้งคุณอาจต้องการสร้างกลุ่มที่ประกอบด้วยกลุ่มอื่น ๆ Ansible เรียกสิ่งนี้ว่ากลุ่มของกลุ่ม ซึ่งสร้างด้วยคีย์เวิร์ด children
คีย์เวิร์ด children ใน INI
ใน INI ส่วนหัวอย่าง [prod:children] จะประกาศกลุ่มแม่ที่สมาชิกเป็นชื่อกลุ่มอื่น ไม่ใช่โฮสต์
[prod:children]
web
dbกำหนดกลุ่มลูกก่อน
กลุ่มลูกต้องมีอยู่พร้อมโฮสต์ของตัวเอง จากนั้นกลุ่มแม่จึงเพียงอ้างถึงกลุ่มเหล่านั้นด้วยชื่อ
[web]
web1.example.com
[db]
db1.example.comโฮสต์ถูกรวมขึ้นไปยังกลุ่มแม่
เลือก prod แล้ว Ansible จะเข้าถึงโฮสต์ทุกเครื่องภายใน web และ db ชื่อเดียวจึงครอบคลุมสภาพแวดล้อมทั้งหมดได้
ansible prod -i inventory.ini --list-hostsการซ้อนกลุ่มใน YAML
YAML รองรับการซ้อนโดยธรรมชาติ กลุ่มหนึ่งสามารถแสดงกลุ่มอื่น ๆ ไว้ใต้คีย์ children ของตนเอง และซ้อนได้ลึกเท่าที่คุณต้องการ
all:
children:
prod:
children:
web:
db:สร้างลำดับชั้นจริง
รวมชั้นต่าง ๆ เช่น ภูมิภาคและบทบาทเข้าด้วยกัน: datacenter ประกอบด้วย prod ซึ่งประกอบด้วย web และ db รายการโฮสต์จึงสะท้อนโครงสร้างองค์กรของคุณ
[datacenter:children]
prod
stagingโฮสต์สืบทอดกลุ่มแม่ทุกระดับ
หาก web เป็นกลุ่มลูกของ prod โฮสต์เว็บก็จะเป็นสมาชิกของทั้ง web และ prod รวมถึง all การเป็นสมาชิกจะส่งต่อขึ้นไปโดยอัตโนมัติ
ตัวแปรไหลลงตามลำดับชั้น
กำหนดตัวแปรไว้ที่กลุ่มแม่ แล้วโฮสต์ลูกทุกเครื่องจะสืบทอดตัวแปรนั้น เว้นแต่กลุ่มที่เจาะจงกว่าจะกำหนดค่าใหม่ทับ
[prod:vars]
env=productionหลีกเลี่ยงกลุ่มลูกแบบวนรอบ
กลุ่มหนึ่งไม่สามารถเป็นกลุ่มลูกของตัวเองได้ ไม่ว่าจะโดยตรงหรือผ่านวงวน Ansible จะปฏิเสธลำดับชั้นแบบวนรอบขณะแยกวิเคราะห์
ตรวจสอบโครงสร้างต้นไม้
ใช้กราฟของรายการโฮสต์เพื่อดูการซ้อนกลุ่มอย่างชัดเจน ตัวเลือก --graph จะแสดงกลุ่มแม่และกลุ่มลูกเป็นโครงสร้างต้นไม้
ansible-inventory -i inventory.ini --graphลำดับชั้นช่วยจัดการระบบขนาดใหญ่
กลุ่มที่ซ้อนกันช่วยให้คุณเลือก prod หรือ web-prod ได้อย่างแม่นยำ เมื่อระบบมีขนาดใหญ่ขึ้น children จะช่วยให้เลือกได้ทั้งแบบครอบคลุมและแบบเจาะจง
ตรวจสอบความเข้าใจอย่างรวดเร็ว
คุณต้องการกลุ่มแม่ที่มีสมาชิกเป็นกลุ่ม web และ db คุณจะใช้ส่วนหัว INI ใด
ทบทวน
คีย์เวิร์ด children ใช้ซ้อนกลุ่มให้เป็นลำดับชั้น โฮสต์จะสืบทอดกลุ่มแม่ทุกระดับ และตัวแปรของกลุ่มจะไหลลงมาตามโครงสร้างต้นไม้ 🌳
คำถามที่พบบ่อย
บทเรียน “กลุ่มซ้อนกันและคีย์เวิร์ด children” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “กลุ่มซ้อนกันและคีย์เวิร์ด children” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส DevOps Bootcamp ให้อัปเกรดเป็น CoddyKit PRO คอร์ส DevOps Bootcamp มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “กลุ่มซ้อนกันและคีย์เวิร์ด children”
สร้างลำดับชั้นของกลุ่มย่อย คุณปฏิบัติ DevOps Bootcamp ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน DevOps Bootcamp หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน DevOps Bootcamp บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “กลุ่มซ้อนกันและคีย์เวิร์ด children” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน DevOps Bootcamp นี้ได้ไหม
ได้ บทเรียน DevOps Bootcamp ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ไฟล์รายการโฮสต์แบบ INI เทียบกับ YAML
- การจัดกลุ่มโฮสต์: web, db และ app
- กลุ่มซ้อนกันและคีย์เวิร์ด children
- ตัวแปรโฮสต์และกลุ่มในรายการโฮสต์