บทความก่อนหน้านี้ผมได้อธิบายถึงวิธีการ deploy service มาแล้ว ทั้งบน AWS และ  Azure บทความนี้เรามาดูการปิด หรือยกเลิก service เหล่านั้นดูกันบ้างดีกว่า ว่าหลังจากเปิด service แล้ว ต้องการปิด ยกเลิกไม่ให้บริการ service เหล่านั้นแล้วจะต้องใช้คำสั่งอะไร

ก่อนอื่นเลย เราได้เรียนรู้กับคำสั่ง

$ juju expose <ชื่อ service>

ซึ่งเป็นคำสั่งสำหรับเปิด service เพื่อที่จะให้ผู้อื่นเข้าถึง service เหล่านั้นได้ ผ่าน public-address ของ service นั้นๆ (กรณีที่ไม่ได้ url สำหรับการเข้าถึงใดๆ)

แต่หากเราไม่ต้องการให้ผู้อื่นเข้าถึง service เหล่านั้นแล้ว ก็ให้ใช้คำสั่ง

$ juju unexpose <ชื่อ service>

ซึ่งเป็นคำสั่งตรงกันข้ามกับ expose นั่นเอง

ลองดูตัวอย่างด้านล่างนะครับ ก่อนอื่นผมจะลองตรวจสอบสถานะก่อน ด้วยคำสั่ง

$ juju status

ดูรายละเอียดหลังจากรันคำสั่งด้านบน

จะเห็นว่าในส่วนของ wordpress นั้นสถานะหัวข้อ exposed เป็น true อยู่ และจะเห็นความสัมพันธ์ระหว่าง service mysql และ wordpress ในส่วนของ db ว่า wordpress นั้นใช้ mysql เป็น database อยู่

ผมจะลองปิด service ของ wordpress ด้วยคำสั่ง

$ juju unexpose wordpress

แล้วตรวจสอบสถานะเพื่อดูความเปลี่ยนแปลงด้วยคำสั่ง

สถานะของ wordpress ในส่วนของ exposed ได้ถูกเปลี่ยนเป็น false เรียบร้อยแล้ว

ถัดไปผมจะยกเลิกความสัมพันธ์ระหว่าง service ของ wordpress และ mysql นี้ ด้วยคำสั่ง

$ juju remove-relation wordpress mysql

แล้วตรวจสอบสถานะอีกครั้ง แล้วดูผลลัพธ์

นอกจากคำสั่ง remove แล้ว ยังมีอีกคำสั่งที่จะยกเลิกความสัมพันธ์ระหว่าง service ได้ นั่นคือคำสั่ง destroy

แต่การใช้คำสั่ง destroy นั้นต้องใช้ความระมัดระวัง เพราะผลลัพธ์ที่ได้นั้นจะแตกต่างจากคำสั่ง remove ข้อแตกต่างคือ

  • คำสั่ง remove-relation จะเป็นเพียงการยกเลิกความสัมพันธ์บน environment เท่านั้น
  • แต่คำสั่ง destroy-relation จะเป็นการยกเลิกความสัมพันธ์ของ alias (หรือ cloud ที่เราไปใช้บริการ)

สุดท้ายถ้าเราต้องการยกเลิก service สามารถทำได้โดยใช้คำสั่ง

$ juju remove-service wordpress

แล้วลองตรวจสอบสถานะดูอีกครั้ง

จะพบว่า service ของ wordpress ได้ถูกยกเลิกไปเรียบร้อยครับ

Comments are closed.