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

การทำ `plan` และ `apply` โดยอัตโนมัติ

ตั้งค่า `terraform plan` ให้ทำงานอัตโนมัติเพื่อการตรวจสอบ และ `terraform apply` เพื่อการปรับใช้ภายในระบบ CI/CD เพื่อให้การปรับใช้มีความสอดคล้องกัน

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

การนำ Terraform ไปใช้งานโดยอัตโนมัติ

การเรียกใช้ terraform plan และ terraform apply ด้วยตนเองอาจใช้เวลานานและเกิดข้อผิดพลาดได้ง่าย โดยเฉพาะในสภาพแวดล้อมที่ทำงานเป็นทีม

การทำให้ขั้นตอนเหล่านี้ทำงานโดยอัตโนมัติภายในไปป์ไลน์ Continuous Integration/Continuous Deployment (CI/CD) มีประโยชน์อย่างมาก:

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

การแสดงตัวอย่างการเปลี่ยนแปลงโดยอัตโนมัติ

คำสั่ง terraform plan เปรียบเสมือนระบบป้องกันความผิดพลาด โดยจะแสดงให้เห็นอย่างชัดเจนว่า Terraform จะเปลี่ยนแปลงโครงสร้างพื้นฐานของคุณอย่างไร โดยยังไม่ดำเนินการเปลี่ยนแปลงจริง

ในไปป์ไลน์ CI/CD ควรเรียกใช้ plan โดยอัตโนมัติทุกครั้งที่มีการเปลี่ยนแปลงโค้ด (เช่น คำขอรวมโค้ด) เพื่อให้มีตัวอย่างการเปลี่ยนแปลงสำหรับตรวจสอบได้ทันที

การตั้งค่าการวางแผนอัตโนมัติ

การผสาน terraform plan เข้ากับไปป์ไลน์ CI โดยทั่วไปประกอบด้วยขั้นตอนไม่กี่ขั้นตอน:

  1. เริ่มต้น: เรียกใช้ terraform init เพื่อเตรียมไดเรกทอรีทำงาน
  2. วางแผน: เรียกใช้ terraform plan เพื่อสร้างการเปลี่ยนแปลงที่เสนอ
  3. ผลลัพธ์: บันทึกผลลัพธ์ของแผนไว้สำหรับตรวจสอบ

ตัวอย่างแบบย่อของสคริปต์ CI อาจเป็นดังนี้:

# ci_plan_stage.sh
terraform init
terraform plan -out=tfplan

ทำความเข้าใจการเปลี่ยนแปลงที่เสนอ

หลังจากเรียกใช้ terraform plan แล้ว ผลลัพธ์ที่ได้มีความสำคัญอย่างยิ่ง โดยจะแสดงรายละเอียดของทรัพยากรทุกรายการที่จะถูกสร้าง (+) อัปเดต (~) หรือลบ (-)

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

การอนุมัติโดยมนุษย์ก่อนนำไปใช้งาน

ส่วนสำคัญของการทำงานอัตโนมัติอย่างปลอดภัยคือการกำหนดเงื่อนไขก่อนขั้นตอน terraform apply โดยทั่วไปคุณไม่ควรให้ apply ทำงานทันทีหลังจากทุกครั้งที่เรียกใช้ plan

ควรให้สมาชิกทีมตรวจสอบและอนุมัติผลลัพธ์ของ plan อย่างชัดเจนก่อน จากนั้นการอนุมัติ (เช่น การรวมคำขอรวมโค้ด) จึงจะเรียกใช้การนำไปใช้งานจริง

การนำโครงสร้างพื้นฐานไปใช้งานโดยอัตโนมัติ

เมื่อมีการตรวจสอบและอนุมัติ terraform plan แล้ว terraform apply จะเข้ามาดำเนินการต่อ คำสั่งนี้จะดำเนินการเปลี่ยนแปลงตามที่กำหนดไว้ในไฟล์การกำหนดค่าของคุณ

ในไปป์ไลน์ CI/CD มักเรียกใช้ apply หลังจากรวมโค้ดสำเร็จไปยังสาขาที่กำหนดไว้สำหรับการนำไปใช้งาน (เช่น main หรือ production) หรือเรียกใช้ด้วยตนเองหลังได้รับอนุมัติ

ขั้นตอนการนำไปใช้งานโดยอัตโนมัติ

เมื่อทำให้ terraform apply ทำงานโดยอัตโนมัติ คุณมักจะใช้แฟล็ก -auto-approve ในสภาพแวดล้อม CI/CD โปรดทราบว่าแฟล็กนี้จะข้ามข้อความขอการยืนยันแบบโต้ตอบ

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

# cd_apply_stage.sh
terraform init
terraform apply -auto-approve tfplan

การนำไปใช้งานอย่างสอดคล้องกันทุกครั้ง

Terraform ได้รับการออกแบบให้มีคุณสมบัติ ทำซ้ำได้โดยไม่ก่อให้เกิดการเปลี่ยนแปลงเพิ่มเติม ซึ่งหมายความว่า หากคุณเรียกใช้ terraform apply หลายครั้งด้วยการกำหนดค่าเดิม ระบบจะเปลี่ยนแปลงเฉพาะเมื่อโครงสร้างพื้นฐานจริงไม่ตรงกับสถานะที่ต้องการเท่านั้น

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

การรักษาความปลอดภัยให้กระบวนการทำงานอัตโนมัติ

เมื่อทำให้ plan และ apply ทำงานโดยอัตโนมัติ:

  • สิทธิ์เท่าที่จำเป็น: ตรวจสอบให้แน่ใจว่าตัวแทน CI/CD มีเฉพาะสิทธิ์ที่จำเป็นเท่านั้น
  • สถานะระยะไกล: ใช้พื้นที่จัดเก็บสถานะระยะไกลที่มีการล็อกเพื่อรองรับการทำงานร่วมกันของทีม
  • การควบคุมเวอร์ชัน: จัดเก็บการกำหนดค่า Terraform ทั้งหมดไว้ภายใต้ระบบควบคุมเวอร์ชัน
  • การตรวจติดตาม: จัดให้มีการตรวจติดตามและการแจ้งเตือนสถานะการนำไปใช้งาน

ตรวจสอบความเข้าใจของคุณ

มาทดสอบความรู้ของคุณเกี่ยวกับการทำให้ Terraform ทำงานโดยอัตโนมัติใน CI/CD กันเถอะ!

ประเด็นสำคัญ

ในบทเรียนนี้ เราได้เรียนรู้วิธีทำให้ terraform plan และ terraform apply ทำงานโดยอัตโนมัติภายในไปป์ไลน์ CI/CD

  • terraform plan ให้ภาพตัวอย่างการเปลี่ยนแปลงอย่างปลอดภัย เหมาะสำหรับการตรวจสอบโดยอัตโนมัติและการตรวจสอบโดยมนุษย์
  • การกำหนดเงื่อนไขให้ apply ต้องได้รับอนุมัติ ช่วยให้มีการตรวจสอบการเปลี่ยนแปลงที่สำคัญก่อนดำเนินการ
  • terraform apply ทำให้การนำไปใช้งานเป็นระบบอัตโนมัติ โดยมักใช้ -auto-approve ในสภาพแวดล้อมที่มีการควบคุม
  • คุณสมบัติการทำงานซ้ำโดยไม่ก่อให้เกิดการเปลี่ยนแปลงเพิ่มเติมของ Terraform ทำให้การนำไปใช้งานโดยอัตโนมัติมีความน่าเชื่อถือและคาดการณ์ได้

ระบบอัตโนมัตินี้เป็นหัวใจสำคัญของการจัดการโครงสร้างพื้นฐานให้มีประสิทธิภาพ สอดคล้องกัน และทำงานร่วมกันได้!

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

บทเรียน “การทำ `plan` และ `apply` โดยอัตโนมัติ” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “การทำ `plan` และ `apply` โดยอัตโนมัติ”

ตั้งค่า `terraform plan` ให้ทำงานอัตโนมัติเพื่อการตรวจสอบ และ `terraform apply` เพื่อการปรับใช้ภายในระบบ CI/CD เพื่อให้การปรับใช้มีความสอดคล้องกัน คุณปฏิบัติ DevOps Bootcamp ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

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

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

บทเรียน “การทำ `plan` และ `apply` โดยอัตโนมัติ” ใช้เวลานานแค่ไหน

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

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

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

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

  1. Terraform ในกระบวนการ CI/CD
  2. การทำ `plan` และ `apply` โดยอัตโนมัติ
  3. การจัดการข้อมูลรับรองอย่างปลอดภัย
  4. GitOps และระบบอัตโนมัติสำหรับคำขอดึง
← กลับไปที่ DevOps Bootcamp