0Pricing
Docker & DevOps Fundamentals · บทเรียน

พื้นฐานโครงสร้างพื้นฐานเป็นโค้ด

ทำความเข้าใจโครงสร้างพื้นฐานเป็นโค้ด: การกำหนดเซิร์ฟเวอร์ เครือข่าย และบริการในไฟล์ที่ควบคุมเวอร์ชัน แทนการคลิกผ่านคอนโซล รวมถึงหลักการที่ทำให้แนวทางนี้เชื่อถือได้

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

โครงสร้างพื้นฐานในรูปแบบโค้ดคืออะไร

โครงสร้างพื้นฐานในรูปแบบโค้ด (IaC) หมายถึงการอธิบายโครงสร้างพื้นฐาน เช่น เซิร์ฟเวอร์ เครือข่าย และตัวกระจายโหลด ไว้ในไฟล์ที่เครื่องอ่านได้ ซึ่งมีการจัดการเวอร์ชันและนำไปใช้โดยอัตโนมัติ แทนการตั้งค่าด้วยตนเอง

ปัญหาที่แก้ไขได้

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

  • สภาพแวดล้อมสำหรับพัฒนา/ทดสอบ/จริงที่สอดคล้องกัน
  • กู้คืนจากภัยพิบัติได้รวดเร็ว
  • ประวัติการเปลี่ยนแปลงที่ตรวจสอบได้

แบบประกาศเทียบกับแบบคำสั่ง

เครื่องมือแบบ ประกาศจะอธิบายสถานะปลายทางที่ต้องการ แล้วคำนวณขั้นตอนต่าง ๆ ให้เอง (Terraform) ส่วนเครื่องมือแบบ คำสั่งจะเรียกใช้คำสั่งที่ระบุไว้อย่างชัดเจนตามลำดับ (สคริปต์เชลล์) IaC สมัยใหม่ส่วนใหญ่ใช้แนวทางแบบประกาศ

ตัวอย่างแบบประกาศ

ในที่นี้ ไฟล์แบบประกาศเพียงระบุว่าควรมีเครื่องเสมือนหนึ่งเครื่อง เครื่องมือจะตัดสินใจว่าจะสร้าง อัปเดต หรือปล่อยไว้ตามเดิม

resource "server" "web" {
  name  = "web-01"
  cpu   = 2
  image = "ubuntu-22.04"
}

ความเป็นไอดีมโพเทนต์

หลักการสำคัญของ IaC คือ การใช้คำจำกัดความเดิมซ้ำ ๆ ให้ผลลัพธ์เหมือนเดิม การเรียกใช้ครั้งแรกจะสร้างทรัพยากร ส่วนครั้งต่อ ๆ ไปจะไม่เปลี่ยนแปลงอะไร หากสถานะตรงกันแล้ว

การควบคุมเวอร์ชัน

ไฟล์ IaC จัดเก็บไว้ใน Git เช่นเดียวกับโค้ดแอปพลิเคชัน คุณจะเห็นความแตกต่าง ตรวจสอบโค้ด ระบุผู้แก้ไข และย้อนคืนโครงสร้างพื้นฐานได้ด้วยการย้อนกลับคอมมิต

git add main.tf
git commit -m "Add web server definition"

วางแผนก่อนนำไปใช้

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

terraform plan

การจัดการสถานะ

เครื่องมือแบบประกาศจะเก็บ ไฟล์สถานะ ที่เชื่อมโยงคำจำกัดความของคุณกับทรัพยากรจริง ไฟล์นี้ต้องจัดเก็บอย่างปลอดภัย (มักจัดเก็บจากระยะไกล) และห้ามแก้ไขด้วยตนเอง

โครงสร้างพื้นฐานแบบไม่เปลี่ยนแปลง

แทนที่จะแก้ไขเซิร์ฟเวอร์ที่กำลังทำงาน แนวทางแบบไม่เปลี่ยนแปลงจะ แทนที่ เซิร์ฟเวอร์เหล่านั้น: สร้างอิมเมจใหม่ นำอินสแตนซ์ใหม่ไปใช้งาน แล้วเลิกใช้อินสแตนซ์เก่า ทำให้เกิดปัญหาน้อยลงและย้อนกลับได้ง่าย

การจัดการการกำหนดค่า

IaC จัดเตรียมเครื่อง ส่วนเครื่องมือ การจัดการการกำหนดค่า (Ansible, Chef, Puppet) จะติดตั้งและกำหนดค่าซอฟต์แวร์บนเครื่องเหล่านั้น เมื่อทำงานร่วมกัน เครื่องมือเหล่านี้จะทำให้ระบบทั้งหมดเป็นอัตโนมัติ

ansible-playbook -i inventory site.yml

IaC ในไปป์ไลน์ DevOps

IaC ทำงานร่วมกับ CI/CD ได้อย่างลงตัว: การผสานการเปลี่ยนแปลงอาจเรียกใช้ plan เพื่อตรวจสอบ จากนั้นจึงใช้ apply เมื่อได้รับอนุมัติ การเปลี่ยนแปลงโครงสร้างพื้นฐานจะผ่านขั้นตอนควบคุมเดียวกับการเปลี่ยนแปลงโค้ด

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

เหตุใดความเป็นไอดีมโพเทนต์จึงสำคัญใน IaC

สรุป

ตอนนี้คุณเข้าใจพื้นฐานของ IaC แล้ว:

  • อธิบายโครงสร้างพื้นฐานไว้ในไฟล์ที่จัดการเวอร์ชัน แทนการตั้งค่าด้วยการคลิกด้วยตนเอง
  • คำจำกัดความแบบ ประกาศ + การนำไปใช้แบบ เป็นไอดีมโพเทนต์
  • วางแผนก่อนนำไปใช้ พร้อมการจัดการสถานะอย่างปลอดภัย
  • โครงสร้างพื้นฐานแบบไม่เปลี่ยนแปลงและการจัดการการกำหนดค่าช่วยเติมเต็มแนวทางนี้

IaC ทำให้ระบบอัตโนมัติของ DevOps เชื่อถือได้และทำซ้ำได้

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

บทเรียน “พื้นฐานโครงสร้างพื้นฐานเป็นโค้ด” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “พื้นฐานโครงสร้างพื้นฐานเป็นโค้ด”

ทำความเข้าใจโครงสร้างพื้นฐานเป็นโค้ด: การกำหนดเซิร์ฟเวอร์ เครือข่าย และบริการในไฟล์ที่ควบคุมเวอร์ชัน แทนการคลิกผ่านคอนโซล รวมถึงหลักการที่ทำให้แนวทางนี้เชื่อถือได้ คุณปฏิบัติ Docker & DevOps Fundamentals ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

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

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

บทเรียน “พื้นฐานโครงสร้างพื้นฐานเป็นโค้ด” ใช้เวลานานแค่ไหน

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

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

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

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

  1. แนวคิดแบบ DevOps
  2. อธิบายการผสานรวมอย่างต่อเนื่อง
  3. การส่งมอบและการปรับใช้อย่างต่อเนื่อง
  4. พื้นฐานโครงสร้างพื้นฐานเป็นโค้ด
← กลับไปที่ Docker & DevOps Fundamentals