メインコンテンツへスキップ
記事一覧へ戻る

นำ Resource เดิมเข้าการดูแลของ OpenTofu ด้วย Import

import เชื่อมวัตถุที่สร้างไว้แล้วกับ address ใน state อธิบายหลักการใช้งาน กรณีที่เหมาะ และข้อควรระวังจากเอกสารทางการ

นำ Resource เดิมเข้าการดูแลของ OpenTofu ด้วย Import

import เชื่อมวัตถุที่สร้างไว้แล้วกับ address ใน state เหมาะกับการย้ายเซิร์ฟเวอร์หรือบริการคลาวด์ที่สร้างด้วยมือเข้าสู่ infrastructure as code บทความนี้สรุปแนวคิดจากเอกสารทางการของ OpenTofu และจุดที่ควรตรวจเมื่อนำไปใช้จริง

ภาพรวม

OpenTofu อ่าน configuration แล้วเทียบกับ state เพื่อวางแผนเปลี่ยน resource จริง การตรวจ plan และเก็บ state อย่างปลอดภัยสำคัญพอ ๆ กับการเขียน configuration

หัวข้อนี้ตอบโจทย์เฉพาะเรื่อง: import เชื่อมวัตถุที่สร้างไว้แล้วกับ address ใน state จึงควรเริ่มจากปัญหาที่ต้องแก้และผลลัพธ์ที่คาดหวัง ไม่ใช่เพียงเปิดฟีเจอร์เพราะมีอยู่ในเครื่องมือ

หลักการทำงาน

หลัง import ต้องเขียน configuration ให้ตรงพฤติกรรมจริงและตรวจ plan อีกครั้ง

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

เหมาะกับงานแบบไหน

เหมาะกับการย้ายเซิร์ฟเวอร์หรือบริการคลาวด์ที่สร้างด้วยมือเข้าสู่ infrastructure as code

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

ขั้นตอนนำไปใช้

  1. ตรวจ workspace, backend และ state ที่กำลังใช้งาน
  2. อ่าน plan โดยสนใจ resource ที่จะถูกแทนที่หรือทำลาย
  3. หลัง apply ตรวจ resource จริงและเก็บ plan ที่ผ่านการทบทวน

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

ข้อควรระวัง

import ไม่ได้สร้าง configuration ที่สมบูรณ์ให้อัตโนมัติ และการจับคู่ผิดอาจทำให้ plan จะลบหรือแก้ทรัพยากร

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

สรุป

import เชื่อมวัตถุที่สร้างไว้แล้วกับ address ใน state เหมาะกับการย้ายเซิร์ฟเวอร์หรือบริการคลาวด์ที่สร้างด้วยมือเข้าสู่ infrastructure as code ก่อนนำไปใช้กับงานหลัก ควรตรวจผลตามขั้นตอนข้างต้นและทบทวนข้อจำกัดของระบบที่มีอยู่

อ่านเพิ่มเติม: เอกสารทางการของ OpenTofu