0Pricing
DevOps Bootcamp · บทเรียน

เมื่อใดควรสร้างโมดูลแบบกำหนดเอง

มองเห็นช่องว่างที่โมดูลเดิมยังไม่ครอบคลุม

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

เมื่อสิ่งที่มีมาให้ไม่เพียงพอ

Ansible มีโมดูลมาให้หลายพันรายการ แต่บางครั้งก็ไม่มีรายการใดตรงกับความต้องการของคุณ ช่องว่างนี้เองคือเวลาที่ โมดูลกำหนดเองมีประโยชน์

ค้นหาก่อนสร้าง

ตรวจสอบ Galaxy และเอกสารประกอบก่อนเสมอ คอลเลกชันจากชุมชนมักมีสิ่งที่ห่อหุ้ม API ที่ไม่คุ้นเคยนั้นไว้แล้ว ทำให้คุณไม่ต้องเขียนโค้ดเลย

สัญญาณเตือนจากโมดูล shell

หากเพลย์บุ๊กของคุณเต็มไปด้วยการเรียกใช้ command และ shell เพื่อแยกวิเคราะห์ผลลัพธ์ นั่นคือสัญญาณเตือน โมดูลสามารถซ่อนความยุ่งเหยิงนั้นไว้เบื้องหลังอาร์กิวเมนต์ที่สะอาดได้

ansible.builtin.command: myapp create --name web

คุณสมบัติทำซ้ำได้ที่ shell มอบให้ไม่ได้

งาน shell ดิบจะรายงานว่ามีการเปลี่ยนแปลงทุกครั้งที่ทำงาน โมดูลจริงจะตรวจสอบสถานะปัจจุบันก่อน ทำให้ได้คุณสมบัติทำซ้ำได้ที่ shell ไม่สามารถมอบให้ได้

ห่อหุ้ม API กำหนดเอง

คุณอาจมีเครื่องมือภายในหรือ REST API ที่ยังไม่มีโมดูล โมดูล กำหนดเองจะเปลี่ยนการผสานรวมดังกล่าวให้เป็นงานเดียวที่เป็นระเบียบและนำกลับมาใช้ซ้ำได้

โมดูลทำงานบนเป้าหมาย

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

ตัวกรองกับปลั๊กอินแตกต่างกัน

ไม่ใช่ทุกช่องว่างที่ต้องใช้โมดูล การแปลงข้อมูลในแม่แบบเป็นงานของปลั๊กอินตัวกรอง ขณะที่โมดูลใช้ทำงานจริงบนโฮสต์

โมดูลของคุณอยู่ที่ใด

วางไฟล์เดียวไว้ในโฟลเดอร์ library ถัดจากเพลย์บุ๊ก แล้ว Ansible จะค้นหาไฟล์นั้นโดยอัตโนมัติ ไม่จำเป็นต้องจัดทำแพ็กเกจเพื่อเริ่มต้น

myproject/
  library/
    my_module.py
  playbook.yml

Python เป็นค่าเริ่มต้น

โมดูลส่วนใหญ่เขียนด้วย Python เพราะ Ansible มีไลบรารีตัวช่วยสำหรับภาษานี้ ภาษาอื่นก็ใช้ได้ แต่จะไม่ได้รับการสนับสนุนดังกล่าว

ให้แต่ละโมดูลมุ่งเน้นงานเดียว

เช่นเดียวกับสิ่งที่มีมาให้ โมดูลของคุณควรทำงานเดียวให้ดี หลีกเลี่ยงการยัดการทำงานที่ไม่เกี่ยวข้องกันห้าอย่างไว้ในไฟล์เดียวที่ใหญ่และซับซ้อน

สัญญาของโมดูล

ทุกโมดูลทำตามสัญญา: รับอาร์กิวเมนต์ JSON ทำงาน แล้วส่งคืนผลลัพธ์ JSON เมื่อเข้าใจสิ่งนี้แล้ว คุณก็สร้างอะไรก็ได้

ตรวจสอบอย่างรวดเร็ว

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

ทบทวน

สร้างโมดูลกำหนดเองหลังจากค้นหาแล้วเท่านั้น เมื่อคุณต้องการงานที่ทำซ้ำได้และนำกลับมาใช้ซ้ำได้ ซึ่ง shell และสิ่งที่มีมาให้ไม่สามารถมอบให้ได้ ควรให้โมดูลมุ่งเน้นงานอย่างชัดเจน 🛠️

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

บทเรียน “เมื่อใดควรสร้างโมดูลแบบกำหนดเอง” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “เมื่อใดควรสร้างโมดูลแบบกำหนดเอง”

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

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

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

บทเรียน “เมื่อใดควรสร้างโมดูลแบบกำหนดเอง” ใช้เวลานานแค่ไหน

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

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

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

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

  1. เมื่อใดควรสร้างโมดูลแบบกำหนดเอง
  2. AnsibleModule และข้อกำหนดอาร์กิวเมนต์
  3. คืนค่า JSON และรองรับ changed
  4. รองรับโหมดตรวจสอบในโมดูลของคุณ
← กลับไปที่ DevOps Bootcamp