การสร้าง VPC Beginner และเชื่อมต่อกับ EC2 Instance

คุณสามารถใช้ Amazon VPC เพื่อสร้างเครือข่ายที่ซับซ้อนในสภาพแวดล้อม AWS ของคุณได้ ซึ่งเป็นบริการที่ปลอดภัยและเป็นฟังก์ชันที่มีประสิทธิภาพสูงมากสำหรับการตั้งค่าการใช้งานหลายๆ บริการร่วมกัน เช่น EC2 เป็นต้น โดยเราสามารถสร้างและนำไปใช้กับ Service EC2 และอื่นๆ ได้ ซึ่งการใช้งานนั้นก็ง่ายมากๆ โดยในบทความนี้จะเป็นการสร้าง VPC และเชื่อมต่อกับ EC2 Instance สามารถเข้ามาศีกษาได้ที่บทความนี้เลย

สวัสดีเพื่อนๆ ชาว AWS Service ทุกท่านด้วยครับ ผมป๊อปนะครับ

ในบทความนี้ผมได้เขียนอธิบายเกี่ยวกับการสร้าง VPC Beginner และเชื่อมต่อกับ EC2 Instance ไว้ครับ สามารถเรียนรู้วิธีการใช้งาน VPC กับ EC2 Instance เบื้องต้นในบทความนี้ได้เลย

เป้าหมายในการสร้าง VPC Beginner

การสร้าง VPC นี้ จะนำไปเชื่อมต่อกับ EC2 Instance

สร้าง VPC ในรีเจี้ยน Singapore ของ AWS และทำการเชื่อมต่อ Internet gateway เข้ากับ VPC เพื่อให้ Internet กับ VPC สามารถสื่อสารกันได้ จากนั้นสร้าง Public subnet 1 รายการใน VPC ตามด้วยสร้าง EC2 ใน Public subnet

ในส่วนที่เกี่ยวกับ Public IP, Private IP และ Network Address จะอธิบายในภายหลัง
structure_diagram_1

การสร้าง VPC Beginner

เราจะมาทำการสร้าง VPC Beginner ใน Service Amazon VPC นี้
โดยค้นหาคำว่า🔍︎ VPCและคลิกVPC
search_vpc

สร้าง VPC Beginner

ทีนี้เรามาเริ่มการสร้าง VPC Beginner กันเถอะ

มาที่เมนูด้านซ้าย เลือกYour VPCs
menu_vpc

คลิกCreate VPC
create_vpc

» เลือก ◉VPC, subnets, etc.
» ใส่ชื่อที่ ✅ Auto-generate เช่นtinnakorn-test
» IPv4 CIDR block:192.168.0.0/16

ช่วงของ Network ที่คุณต้องการกำหนดให้กับ VPC ของคุณ

192.168.0.0/16 หมายถึงช่วงของ IP Address 65536 ตั้งแต่ 192.168.0.0 - 192.168.255.255

cre_vpc-1

» Availability Zones (AZs):1(Availability Zone จะใช้ 1 โซน อ่านข้อมูลเพิ่มเติมได้ที่ → AWS Region, Availability Zone และ Edge Location คืออะไร)

» Number of public subnets:1(สร้าง Public subnet 1 รายการ)
» Number of private subnets:0(ไม่สร้าง Private subnet)
» NAT gateways ($):None(ไม่ใช้ NAT Gateway)
» VPC endpoints:None(ไม่ใช้ VPC endpoint)

เมื่อทำการเปลี่ยน Parameters แผนผังด้านขวาก็จะเปลี่ยนไปโดยอัตโนมัติ

ครั้งนี้ เนื่องจากว่าเป็นบทความสำหรับ VPC Beginner ดังนั้นเรามาทำการกำหนดค่าที่ง่ายที่สุดกันเถอะ

cre_vpc-2

กลับมาที่หัวข้อ Number of public subnets เพื่อใส่ IP
» คลิกที่▶ Customize public subnets CIDR blocks(192.168.1.0/24)
» Subnet CIDR block in ap-southeast-1a:192.168.1.0/24(192.168.1.0/24 หมายถึงช่วงของ IP Address 256 ตั้งแต่ 192.168.1.0 - 192.168.1.255)

ทีนี้ให้ดูที่ช่องสีเขียวด้านล่าง ถ้าเราใส่ IP ก่อนที่จะตั้งค่าในส่วนของ Number of private subnets ก็จะทำให้ IP ด้านบนนี้เปลี่ยนไป จึงแนะนำให้ใส่ IP ทีหลัง
cre_vpc-3

ทำการCheckbox ทั้ง 2 อัน และคลิกCreate VPC
cre_vpc-4-fix

คลิกView VPC
cre_vpc-5

เมื่อสร้างเสร็จแล้วจะได้หน้าตาแบบนี้
cre_vpc-6

ตรวจสอบข้อมูลที่สร้างขึ้น

เมื่อสร้าง VPC เสร็จแล้ว จะได้สิ่งที่ถูกสร้างขึ้นมาจาก VPC ดังนี้:

   Function                 ID             
VPC tinnakorn-test-vpc
Subnet tinnakorn-test-subnet-public1-ap-southeast-1a
Route Table tinnakorn-test-rtb-public1-ap-southeast-1a
Internet Gateway tinnakorn-test-igw

ทีนี้เรามาทำการตรวจสอบ Route Tables, Internet Gateways และ Subnets ที่ได้มาจากการสร้าง VPC กันเถอะ

การตรวจสอบ Route Tables ให้ไปที่เมนูRoute Tablesแล้วค้นหาชื่อของเราโดยพิมพ์ชื่อเดียวกับตอนที่สร้าง VPC ได้เลย เช่นtinnakorn-test
cre_vpc-7

การตรวจสอบ Internet Gateways ให้ไปที่เมนูInternet Gatewaysแล้วค้นหาชื่อของเราโดยพิมพ์ชื่อเดียวกับตอนที่สร้าง VPC ได้เลย เช่นtinnakorn-test
cre_vpc-8

การตรวจสอบ Subnets ให้ไปที่เมนูSubnetsแล้วค้นหาชื่อของเราโดยพิมพ์ชื่อเดียวกับตอนที่สร้าง VPC ได้เลย เช่นtinnakorn-test
cre_vpc-orig

การตั้งค่า Public Subnet

ในส่วนของ Subnets นี้เมื่อค้นหาชื่อของเราแล้ว ให้คลิกเข้าไปที่Subnet IDของเราตามรูปภาพ
cre_vpc-9

มาที่มุมขวาบน คลิกActions ▼และเลือกEdit subnet settings
cre_vpc-10

มาที่หัวข้อAuto-assign IP settings
จากนั้น CheckboxEnable auto-assign public IPv4 address ตามนี้
cre_vpc-11

คลิกSave
cre_vpc-12

การสร้าง Key pair และ EC2 Instance

ก่อนที่จะสร้าง EC2 Instance ต้องสร้าง Key pair ก่อนทุกครั้ง

การสร้าง Key pair

สามารถดูวิธีการติดตั้ง Key pair ได้ที่บทความของ วิธีติดตั้ง Amazon Linux บน EC2 และเชื่อมต่อเซิร์ฟเวอร์ด้วยโปรแกรม PuTTy ในหัวข้อ 1. Create Key Pair นี้ได้เลย

คุณสามารถตั้งชื่อว่าอะไรก็ได้ เช่นtinnakorn-test-vpc
key_pair_vpc-1

การสร้าง EC2 Instance โดยใช้ Network VPC

เมื่อสร้าง Key pair เสร็จแล้ว เริ่มสร้าง EC2 Instance ในหัวข้อนี้ได้เลย

มาที่เมนูด้านซ้าย เลือกInstances
Instance-select

คลิกLaunch instances
Ins-win-1

Step 1: Choose an Amazon Machine Image (AMI) คือ Instance จะมีเซิร์ฟเวอร์ให้เลือกใช้มากมาย เช่น macOS, Red Hat, SUSE Linux, Ubuntu, Microsoft Windows, Debian เป็นต้น ซึ่งในบล็อกนี้จะใช้ Amazon Linux 2 AMI (HVM) ในการติดตั้ง

» Amazon Linux 2 AMI (HVM) - Kernel 5.10, SSD Volume Type คลิกSelect
create_instance_userdata-1

Step 2: Choose an Instance Type คือ เราสามารถเลือก Type CPU Memory ที่จะนำไปใช้งานได้ตามความต้องการ ไม่ว่าเว็บไซต์จะมีขนาดเล็กหรือขนาดใหญ่ ก็สามารถเลือกขนาดความจุของ CPU Memory ได้ตามความเหมาะสม

» เลือก Family => t3a | Type => t3a.nano | vCPUs => 2 | Memory => 0.5(สามารถเลือกใช้งานได้ตามความต้องการ)
» คลิกNext: Configure Instance Details
create_instance_userdata-2

Step 3: Configure Instance Details

» เลือก Network ที่สร้างขึ้นเมื่อสักครู่นี้ เช่นtinnakorn-test-vpcจากนั้น Subnet ก็จะเปลี่ยนให้โดยอัตโนมัติ
» คลิกNext: Add Storage
cre_ins_vpc-1

Step 4: Add Storage คือ ในส่วนของ Size (GiB) เราสามารถเพิ่ม Storage ได้ โดยค่าเริ่มต้นจะเป็น 8GB

» คลิกNext: Add Tags
create_instance_userdata-4

Step 5: Add Tags » คลิกAdd Tage
create_instance_userdata-5

» Key:Name | Value:tinnakorn-test-vpc(ใส่ชื่ออะไรก็ได้)
» คลิกNext: Configure Security Group
cre_ins_vpc-2

Step 6: Configure Security Group คือ การตั้งค่า My IP เพื่อจำกัดการเชื่อมต่อ SSH จากทุกตำแหน่ง ซึ่งในส่วนนี้จะทำให้สามารถเชื่อมต่อ SSH จาก My IP (ที่อยู่ IP ปัจจุบันของคุณ) ได้เท่านั้น และในส่วนของ HTTP จะใช้ในการแสดงผลหน้าเว็บไซต์นั่นเอง

» เปลี่ยนชื่อ Security group name กับ Description เป็นชื่ออะไรก็ได้ เช่นtinnakorn-test-vpc
» เปลี่ยน Type SSH ให้เป็น Source:My IP
» คลิกReview and Launch
cre_ins_vpc-3

Step 7: Review Instance Launch » คลิกLaunch
cre_ins_vpc-4

ในส่วนของ POPUP ให้ทำตามขั้นตอนด้านล่าง
» Select a key pair:tinnakorn-test-vpc | RSA(ให้เลือก key pair ที่สร้างไว้ตอนแรก key pair)
» คลิก Checkbox
» คลิกLaunch Instances
cre_ins_vpc-5

ถ้ามีข้อความแจ้งเตือนสีเขียวเหมือนรูปภาพด้านล่างนี้ เท่ากับว่าการสร้าง Instance เสร็จสิ้น
จากนั้นให้คลิกView Instances
cre_ins_vpc-6

หลังจากสร้าง Instance เสร็จแล้ว ให้สังเกตคำว่า Status Checks จะเห็นว่ามีสถานะเป็น🕘 Initializingคือ Instance กำลังทำการสตาร์ทระบบขึ้นมานั่นเอง
cre_ins_vpc-7

เมื่อ Instance เริ่มต้นระบบเสร็จเรียบร้อยแล้ว จะมีสถานะเป็น✅ 2/2 checks passed
cre_ins_vpc-8

เมื่อเข้ามาแล้วจะได้ Instance หน้าตาแบบนี้
ทีนี้มาดูที่ Private IPv4 addresses:192.168.1.166ในส่วนนี้จะเป็น Public subnet
และ Public IPv4 address:52.77.222.247คือ Public IP ที่ใช้ในการเชื่อมต่อ SSH นั่นเอง
cre_ins_vpc-9

การเชื่อมต่อ EC2 Instance ด้วย PuTTY

สามารถดูวิธีการเชื่อมต่อ EC2 ด้วย PuTTY ได้ที่บทความของ วิธีติดตั้ง Amazon Linux บน EC2 และเชื่อมต่อเซิร์ฟเวอร์ด้วยโปรแกรม PuTTy ในหัวข้อ 3. Connect to EC2 by PuTTY นี้ได้เลย

เมื่อทำการเชื่อมต่อ EC2 Instance ด้วย PuTTY เสร็จแล้ว ก็จะได้หน้าตาแบบนี้
putty_vpc

รันคำสั่งนี้เพื่อตรวจสอบ IP Address

ifconfig

putty_ifconfig

จะเห็นว่ามี IP Address แสดงขึ้นมา เช่น192.168.1.166เป็นต้น
ซึ่ง IP Address นี้ก็คือ Private IPv4 addresses นั่นเอง

การลบ VPC

จากนี้จะเป็นการอธิบายวิธีการลบ VPC

หากมี AWS Resource ใน VPC ก็จะไม่สามารถลบ VPC ได้ ดังนั้นต้องทำการ Terminate Instance ให้เรียบร้อยก่อน จึงจะสามารถลบ VPC ได้

เราจะทำการ Terminate Instance, Security group และ Key pair ใน Service EC2 นี้
Search-EC2

Termiate Instance

ให้ทำการ Termiate Instance เป็นอันดับแรก !ถ้าไม่ทำขั้นตอนนี้ก่อน จะไม่สามารถลบ Security group และ VPC ได้นั่นเอง

มาที่เมนูด้านซ้าย เลือกInstance
Instance-select

ค้นหาชื่อ Instance ของเรา แล้วคลิกเข้าไปที่Instance IDของเรา
delete_instance_vpc-1

มาที่มุมด้านขวาบน เลือกInstance state ▼และเลือกTerminate instance
delete_instance_vpc-2

คลิกTerminate
delete_instance_vpc-3

เมื่อ Terminate เสร็จสมบูรณ์ Instance state จะแสดงเป็นTerminated
delete_instance_vpc-4

การลบ Security Group

ก่อนทำการลบ Security Groups ต้องทำการ Terminate Instance ให้เสร็จบูรณ์ และรอจนกว่า Instance state จะแสดงเป็นTerminated

มาที่เมนูด้านซ้าย เลือกSecurity Groups
menu_security_groups

ค้นหา Security Groups ของเราที่ช่อง🔍︎ Filter security groupsโดยสามารถใส่ชื่อเดียวกับ Instance ที่ Terminate ไปเมื่อสักครู่นี้ได้เลย
จากนั้นเลือกActions ▼และเลือกDelete security groups
delete_sg_vpc-1

คลิกDelete
delete_sg_vpc-2

การลบ Key Pair

ทำการลบ Key Pair ตามขั้นตอนนี้ได้เลย

มาที่เมนูด้านซ้าย เลือกKey Pair
menu_keypairs

ค้นหา Key Pair ของเราที่ช่อง🔍︎ Filter key pairs
จากนั้นเลือกActions ▼และเลือกDelete
delete_kp_vpc-1

พิมพ์Deleteลงในช่องตามคำแนะนำด้านบนเพื่อยืนยันการลบ และคลิกDelete
delete_kp_vpc-2

การลบ VPC

เมื่อทำการ Terminate Instance และลบ Security Group กับ Key Pair ใน EC2 เสร็จเรียบร้อยแล้ว เริ่มทำการลบ VPC ในขั้นตอนนี้ได้เลย

มาที่เมนูด้านซ้าย เลือกYour VPCs
delete_vpc-1

ค้นหา VPC ของเราที่ช่อง🔍︎ Filter key pairsและคลิกที่VPC IDของเรา
delete_vpc-2

เมื่อเข้ามาที่หน้า VPC แล้ว จากนั้นเลือกActions ▼และเลือกDelete VPC
delete_vpc-3

เมื่อมี Popup เด้งขึ้นมาจะเห็นว่ามีแจ้งเตือนเกี่ยวกับการลบของฟังก์ชันต่างๆ เช่น Route Tables, Internet Gateways และ Subnets เป็นต้น ซึ่งถ้าลบ VPC นี้ไปแล้ว ฟังก์ชันเหล่านี้จะถูกลบไปด้วยนั่นเอง

ทีนี้ถ้าเราต้องการลบ ก็แค่พิมพ์deleteลงในช่องตามคำแนะนำเพื่อยืนยัน และคลิกDelete
delete_vpc-4

ทีนี้เรามาทำการตรวจสอบ Subnets, Route Tables และ Internet Gateways อีกครั้ง จะเห็นว่าฟังก์ชันเหล่านี้ถูกลบไปแล้วครับ
delete_vpc-5

สรุป

การสาธิตวิธีการสร้าง VPC Beginner และเชื่อมต่อกับ EC2 Instance ก็มีเพียงเท่านี้ จากที่ลองทำกันแล้วไม่ยากเลยใช่ไหมครับ ซึ่งเราสามารถกำหนด IP Address ที่เราต้องการเพื่อใช้แค่สำหรับเราหรือในกลุ่มองค์กรของคุณได้

นอกจากนี้ยังช่วยให้ระบบการเชื่อมต่อหรือการเข้าใช้งาน IP Address ของคุณปลอดภัยมากยิ่งขึ้นอีกด้วย

บทความที่เกี่ยวข้อง

อ้างอิง : [初心者向け]VPC作成からEC2インスタンス起動までを構成図見ながらやってみる(その1)

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