หลายๆ ครั้งที่ในการออกแบบ Infrastructure บน Microsoft Azure นั้นมีความจำเป็นจะต้องใช้ Service ที่หลากหลาย เช่น Virtual Machine, Storage Account, Azure SQL Database เป็นต้น แต่บางครั้งเราต้องการจะเชื่อมต่อระหว่าง Virtual Machine ไปยัง Service เหล่านี้โดยไม่ต้องผ่านอินเทอร์เน็ต หรือต้องการจะจำกัดให้เข้าถึงได้เฉพาะ Virtual Machine ของเราเท่านั้น จะทำอย่างไร ในวันนี้ผมมีคำตอบในเรื่องนี้มาให้ครับ โดยการใช้งาน คุณสมบัติที่เรียกว่า Service EndPoint
Virtual Network Service Service EndPoint
ช่วยให้สามารถขยายการเชื่อมต่อของ Azure Virtual Network ไปยัง Azure Service ต่างๆ เปรียบเสมือนการเชื่อมต่อผ่าน Private IP Address ของ Virtual Network ทำให้การเชื่อมต่อยังคงอยู่ภายใต้การทำงานของ Azure Virtual Network ไม่ต้องเชื่อมต่อผ่านเครือข่ายอินเทอร์เน็ต
Virtual Network Service EndPoint ที่ได้รับการสนับสนุนใน Region SouthEast Asia นั้นในปัจจุบันมีดังต่อไปนี้
- Azure Storage
- Azure SQL Database
- Azure SQL Data Warehouse
- Azure Database for PostgreSQL server
- Azure Database for MySQL server
- Azure Cosmos DB
- Azure Key Vault
- Azure Service Bus
- Azure Event Hubs
สมมุตว่าใน Application หนึ่งมีการใช้งาน Application ที่อยู่บน Virtual Machine (DEMO-VM01) แลตัว Virtual Machine นี้จำเป็นต้องมีการดึงข้อมูลจาก Storage Account ที่เป็น File strorage (demo01fs) ดังรูป
การใช้งาน Virtual Network Service EndPoint นั้นมีขั้นตอนที่สำคัญดังนี้
1. เปิดใช้งาน Service EndPoint ที่ Virtual Network โดยไปเลือกที่ Service EndPoint และคลิกที่ + จากนั้นเลือก Service EndPoint และ Subnet ที่ต้องการ
2. จากนั้นทำการกำหนด Firewall and Virtual Networks ที่ Service ที่ต้องการ ในที่นี้คือ Storage Account ซึ่งหลังจากนี้จะทำการอนุญาติให้ทำการเชื่อมต่อเฉพาะ Virtual Network ที่กำหนด (ก็คือ DEMO-VNET) นั่นเอง
การเลือก Selected Network จะทำให้ storage Account อนุญาตการเชื่อมต่อผ่าน Virtual Network ที่กำหนดเท่านั้น
ทำการเลือก Subscription, Virtual Network และ Subnet ที่เปิด Service EndPoint ไว้ในขั้นตอนแรก
กด “Save” เพื่อบันทึกการเปลี่ยนแปลง
3. จากนั้นสมมุติว่าเราใช้วิธีการ Map drive ก็สามารถที่จะ map drive ไปยัง Storage Account ได้ ตามตัวอย่าง
ซึ่งหากเราทำการ Map Drive ด้วยคำสั่งเดียวกัน แต่ Map จากภายนอก Virtual Network จะไม่สามารถเข้าถึงได้
เอาล่ะครับ ตอนนี้ก็เอาไว้แค่นี้ก่อนนะครับ พอหอมปากหอมคอ คราวหน้าผมจะได้หาเกร็ดเล็กๆ น้อยๆ ของ Azure มานำเสนอกันอีกครับ
ข้อมูลเพิ่มเติม