รู้ไหม? เราสามารถสร้าง EC2 Instance เป็น M1 Mac ได้แล้วนะ

นี่เป็นบทความที่ดัดแปลงเนื้อหามาจากบทความภาษาญี่ปุ่นของ Classmethod, Inc. ในหัวข้อ EC2 M1 Mac インスタンスがGAされていたので立ち上げてみた หากผู้อ่านสนใจอ่านเนื้อหาต้นฉบับสามารถอ่านได้ที่ลิ้งค์ "บทความต้นฉบับ" ด้านล่าง เนื้อหาในบทความนี้การอธิบายบางอย่างจะถูกปรับให้เข้าใจง่ายขึ้นทำให้แตกต่างจากต้นฉบับในบางจุด
2022.09.29

จากข่าวในลิ้งด้านล่างนี้ได้เขียนไว้ว่า AWS ได้ประกาศ GA(General Availability) ให้เราสามารเลือกประเภท OS ของ EC2 Instance เป็น M1 Mac ได้แล้ว
ในบทความนี้ผมเลยจะมาลองสร้าง Instance ที่มี OS เป็น M1 Mac มาให้ทุกคนดูกันครับ

เกี่ยวกับ EC2 M1 Mac

AWS Region ที่สามารถใช้งานได้

  • US East (N. Virginia)
  • US West (Oregon)
  • Europe (Ireland)
  • Asia Pacific (Singapore)

ข้อควรระวังก่อนสร้าง

  • ในการสร้าง Instance จำเป็นต้องสร้างแบบ Bare metal instances ของ Dedicated Hosts โดย 1 Dedicated Host จะสามารถใช้ได้แค่ 1 Mac Instance เท่านั้นครับ(เหมือนกับ Intel Mac)
  • การจะลบ Dedicated Host จำเป็นต้องผ่านการใช้งานไปแล้วอย่างน้อย 24 ชั่วโมง หมายความว่าจะมีค่าใช้จ่ายอย่างน้อยในระยะ 24 ชั๋วโมงที่เราใช้
    • โดยจากการคำนวณผ่าน ราคา Dedicated Host ของ Amazon EC2 ราคา M1 Mac Instance ของ Singapore Region จะอยู่ที่ 0.779 USD ซึ่งหมายความว่าจะมีค่าใช้จ่ายอย่างน้อย 0.779*24 = 18.696 USD
  • ในตอนที่หยุด หรือ ลบ Mac จะมีการ scrubbing workflow เกิดขึ้น ในระหว่างนี้ เราจะไม่สามารถ Launch Mac Instnace ที่หยุด หรือ Launch Mac Instnace ตัวใหม่ได้
  • ในระหว่าง scrubbing workflow จะไม่เกิดค่าใช้จ่าย

และยังมีข้อควรระวังอื่นๆอีก ซึ่งสามารถอ่านรายละเอียดเพิ่มเติมได้ที่ลิ้งค์ด้านล่างนี้

ลองทำดู

งั้นเราจะมาลอง Launch M1 Mac Instnace กันครับ

โดยครั้งนี้ผมจะทำการสร้างใน Region: Asia Pacific (Singapore) กันครับ

สร้าง Dedicated Hosts

ก่นออื่นเราจะทำการสร้าง Dedicated Hosts ผ่าน AWS Management Console ครับ

โดยผมจะเลือก Instance family เป็นmac2 และเลือก Instance type เป็นmac2.metal แล้วก็ไปในขั้นตอนต่อไปครับ

สร้าง M1 Mac EC2 Instance

ต่อจากนั้นเราจะทำการสร้าง Instance ครับ

โดยก่อนอื่นในส่วนของ AMI การที่เราจะเลือกให้เป็น M1 Mac จำเป็นต้องเลือกMac-Arm แล้วเลิอก macOS ที่ต้องการครับ(โดยในภาพทำการเลือก macOS Monterey ครับ)

Instance type ผมเลือกเป็นmac2.metal ครับ

เลื่อนลงมาในส่วนAdvanced detailsให้เราเลือกตั้งค่าในส่วนTenancyให้เป็นDedicated host - launch this instance on a dedicated Host ครับ

ส่วนการตั้งค่าอื่นนอกจากนั้น เช่นพวก Network จะเหมือนกับการ Launch EC2 ทั่วไป

หลังจากนั้นสักพัก Instance stateจะขึ้นเป็นRunning และสามารถใช้ Public IP ในการเชื่อมต่อได้ครับ

ตรวจสอบการเชื่อมต่อ

โดยครั้งนี้เราจะลองเชื่อมต่อโดยใช้ SSH และ VNC ดูครับ

การเชื่อมต่อแบบ SSH

การเชื่อมต่อแบบ SSH สามารถทำได้ปกติโดยใช้ command ผ่าน Locale PC ของคุณ

การเชื่อมต่อ ssh

$ ssh -i Key-pair ec2-user@publicIP

หากเชื่อมต่อสำเร็จจะขึ้นหน้าตาแบบนี้

การเชื่อมต่อแบบ VNC จำเป็นต้องเปิดการอนุญาตให้เชื่อมต่อโดยเปิด Apple Remote Desktop agent ก่อนครับ
ซึ่งทำได้โดยการเชื่อมแบบ SSH แล้วใช้คำสั่งต่อไปนี้ครับ

เปิดการใช้งาน ARD

$ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart \
-activate -configure -access -on \
-restart -agent -privs -all

เมื่อเชื่อมต่อแบบ VNC จำเป็นต้องมีการล็อกอิน เราจำเป็นต้องตั้งค่า Password ของ ec2-user ด้วย command ต่อไปนี้

$ sudo passwd ec2-user

การเชื่อมต่อแบบ VNC

สำหรับการเชื่อมต่อแบบ VNC จำเป็นต้อง port forward เพื่อให้สามารเชื่อมต่อได้จาก Locale PC ครับ

โดยก่อนอื่นให้เราใช้ Command ต่อไปนี้เพื่อทำการ port forward ครับ

การเชื่อมต่อ VNC

$ ssh -L 5900:localhost:5900 -i [Key-pair] ec2-user@[publicIP]

สำหรับ Mac หลังจากใช้ Command ด้านบนแล้วให้เราเปิด Web Browser แล้วพิมพ์ vnc://localhost:5900 ลงไป

ส่วนสำหรับ Windows เราจำเป็นต้องมี VNC ที่ใช้สำหรับการ Remote Desktop โดยในบทความนี้ผมจะใช้ VNC® Viewer ที่เป็นโปรแกรมฟรีครับ

โดยให้เราพิมพ์127.0.0.1:5900แล้วทำการเชื่อมต่อ
จะมีหน้าต่างให้ใส่ User Password ขึ้นมา
ชื่อ User จะเป็น ec2-userและ Password จะเป็นตามที่เราตั้งค่าเมื่อกี้ แล้วพอลองล็อกอินเข้าไปยัง M1 Mac จะได้ผลลัพท์ดังนี้


ทิ้งท้าย

เราทำการ Launch M1 Mac Instnace กันไปแล้ว ผมรู้สึกว่ามันทำได้ง่ายกว่าคิดไว้เยอะเลย

ถ้าท่านผู้อ่านมีโอกาสก็ลองไปใช้งานกันดูได้นะครับ

และถ้าเกิดอยากจะลองทำดู ผมแนะนำให้ลองอ่าน AWS Document ด้านล่างนี้ประกอบไปด้วยจะดีมากๆเลยครับ

บทความต้นฉบับ

EC2 M1 Mac インスタンスがGAされていたので立ち上げてみた | DevelopersIO

บทความอ้างอิง

ดูรายละเอียดเพิ่มเติมได้ที่นี่ สอบถามเพิ่มเติมเกี่ยวกับ AWS คลิกที่นี่