Friday, 6 December 2024

ใช้ GCP f1-micro รันเว็บไซต์ส่วนตัวฟรีๆ – ตอนที่ 3 เปิด Account และสร้าง VM

ตอนที่แล้วผมได้พูดถึงสิ่งที่ต้องทำ (planning) หากต้องการมีเว็บไซต์ของตนเองฟรีบน Google Cloud Platform ขั้นตอนต่อไปเราจะมาเริ่มทำเลยครับ (ไม่ต้องรอแล้ว ลุยเลย!)

1. เปิดบัญชี Google Cloud Platform

จริงๆ ขั้นตอนในส่วนนี้ คุณ Ariyapong Wimolnoch เขียนเอาไว้อย่างละเอียดใน Medium เสร็จสรรพแล้ว ใครอยากเข้าไปอ่านก็ไปอ่านได้ เขียนดีกว่าผมเยอะ (อ้าว)

แต่หลักๆ สิ่งที่ต้องเตรียมคือบัตรเครดิต (credit card) จะบัตรหลักบัตรเสริมได้หมด ขอแค่ตัดเงินได้ ส่วนถ้าใครมีบัตรเดบิต (debit card) ก็ใช้ได้เช่นกัน แต่ต้องไม่ลืมนะครับว่าบัตรเดบิตการ์ดมีหน้าที่ต่างจากบัตรเครดิต ดังนั้นการคืนวงเงินอะไรเหล่านี้อาจปวดหัวกว่าครับ

ว่าแล้วมากันเลยครับ

ขั้นแรกก็ไปที่ https://cloud.google.com/ แล้วกดปุ่ม “Get started for free” มุมบนขวา จากนั้นลงทะเบียนเข้าใช้ด้วยอีเมลที่ผูกกับ Google Account เอาไว้ (ส่วนมากทุกคนมักจะมี Gmail อยู่แล้ว ซึ่งก็ใช้ลงทะเบียนได้ จากนั้นระบบจะพาเราเข้าหน้านี้เป็นด่านแรกครับ

พอถึงขั้นตอนนี้ ใครอยากได้อีเมลอัพเดตอะไรก็ติ๊กเลือกได้เลย แล้วก็ต้องยอมรับเงื่อนไขของเขาด้วย ซึ่งพร้อมกันนี้ Google จะแจกเงินฟรี 300 ดอลลาร์ (ประมาณ 1 หมื่นบาท) สำหรับการใช้งานบน Google Cloud Platform (GCP) นี่แหละครับ

หลังเลือกประเทศที่อาศัย เลือกเครื่องหมายถูก (ติ๊ก เจษฎา ถูก) ตอนยอมรับเงื่อนไขการใช้บริการแล้ว กด Agree and Continue ต่อ เพื่อไปเจอหน้าต่อไปที่จะต้องกรอกข้อมูลยาวเป็นหางว่าว

ถึงจุดนี้อาจจะมีสงสัยว่าทำไมกรอกอะไรกันเยอะแยะ ผมเลยสรุปให้ว่าต้องกรอกอะไรบ้าง

  1. Payment Profile ในกรณีที่เคยผูกบัตรเครดิตกับ Google มาแล้ว (เช่น ซื้อของบน Google Play Music หรืออยู่ในประเทศที่มีระบบ Android Pay/Google Pay) เราจะสามารถเลือกได้ทันทีว่าจะจ่ายด้วยโปรไฟล์ไหน แต่ถ้าไม่มีก็แค่สร้างใหม่เท่านั้น
  2. Account Type ถ้าเปิดเป็นบุคคล (เช่น เว็บส่วนตัว) ให้เลือก Individual แต่ถ้าเป็นธุรกิจ ให้เลือก Business ซึ่งจะมีความแตกต่างกันเล็กน้อย คือถ้าเป็นธุรกิจ จะบังคับใส่ชื่อกิจการ และเลือกให้มีคนติดต่อ (contact person) ซึ่งจะเชื่อมเข้ากับ Google Account ของเราก่อนในขั้นแรกครับ
  3. Name and address ตรงไปตรงมา ก็ชื่อและที่อยู่ที่ติดต่อได้
  4. How you pay อันนี้คงเลือกไม่ได้ เพราะระบบล็อคมาเป็น Monthly Automatic Payments คือจ่ายรายเดือนไปเลย ตัดบัตรเครดิตกันเป็นรายเดือน
  5. Payment Method คือระบบการจ่ายเงิน ในบางประเทศอาจมีระบบการจ่ายเงินมากกว่านี้ แต่ในเคสประเทศไทยมีเฉพาะบัตรเครดิตและเดบิต ซึ่งจะตัดและคืนเงินให้เราทันทีครับประมาณ 40 บาท เนื่องจากเขาต้องการยืนยันตัวตนว่าเราไม่ใช่บอทที่ไหนจะมาลงทะเบียนใช้งาน รองรับเฉพาะ American Express, Mastercard และ VISA และต้องใส่ที่อยู่ของบัตรด้วย

หลักๆ ก็มีเท่านี้ เมื่อใส่ข้อมูลครบแล้วก็กดปุ่ม Start My Free Trial กันได้เลย

ระบบจะมีหน้าจอแจ้งเตือนเพื่อต้อนรับเรา พร้อมกับเครดิตเงิน 300 ดอลลาร์ให้นาน 1 ปี (เฮ) ถ้าใช้เกินหรือหมดจากนี้ ระบบจะหยุดโดยอัตโนมัติ ไม่มีการตัดบัตรเครดิต จนกว่าเราจะสั่งอัพเกรดบัญชีเป็นแบบเต็ม อันนั้นก็โดนเต็มๆ เช่นกันครับ

ในชั้นตอนนี้ ระบบจะสร้างโครงการ (project) ที่ใช้ชื่อว่า My First Project เอาไว้ พร้อมรหัสโครงการแบบสุ่ม ซึ่งถ้าชื่อไม่สวยก็ไปเปลี่ยนเอาได้ หรือถ้าอยากทำแบบผมก็คือ ลบโครงการทิ้งเลยแล้วสร้างชื่อใหม่ แต่ในที่นี้ขอข้ามขั้นตอนนี้ไปนะครับ

หมายเหตุ ผมมีโครงการอยู่สองอัน ซึ่งน่าจะเกิดจากระบบสร้างผิดพลาดอะไรสักอย่างเลยเป็นแบบนี้ เลยจัดการลบไปอันหนึ่งครับ ซึ่งถ้าท่านเจอแบบนี้ก็เลือกโครงการที่มี billing account เอาไว้เท่านั้นเองครับ

2. สร้าง f1-micro VM Instance

ขั้นตอนต่อไปจะเป็นการสร้างเครื่อง Virtual Machine (VM) ทำเป็น Virtual Private Server (VPS) แบบ f1-micro ซึ่งแต่ละเครื่องบนคลาวด์ของ GCP จะเรียกว่า “instance” ครับ ซึ่งจุดที่เราจะเริ่มสร้างได้คือเมนู Compute Engine > VM instances

ระบบจะพาเราเข้ามายังหน้าจอสร้าง VM instances ซึ่งถ้าสร้างบัญชีใหม่ก็อาจจะต้องรอนิดหน่อย พอถึงหน้าจอเราก็กด Create กันเลยครับ

พอมาถึงตรงนี้ เราจะเจอหน้าจอ Create an instance และในนั้นจะเต็มไปด้วยความฉงน สับสน และปวดหัวสำหรับคนที่ต้องการใช้อย่างแน่นอน

หากยังจำกันได้ ผมเคยพูดถึงข้อจำกัดของ f1-micro ไปแล้วว่ามีอะไรบ้าง ซึ่งในขั้นตอนนี้พอเราต้องแปลงออกมาเป็นคำสั่งสร้าง VM instance เราจึงต้องตั้งค่าดังนี้ครับ

  • Name ตั้งชื่อเป็นภาษาอังกฤษครับ เอาตามแต่สะดวกเลย (ของผมเนื่องจากมีเครื่องเดียวก็ Default Instance ไป)
  • Region และ Zone ของเครื่อง (สำคัญมาก!) เครื่อง f1-micro แบบแจกฟรี อนุญาตให้ตั้งอยู่ในสหรัฐอเมริกาเท่านั้นนะครับ และยกเว้น Northern Virginia (us-east4) ด้วย ดังนั้นเราจึงต้องเลือก Region เป็น us-west1, us-central1 และ us-east1 เท่านั้น ส่วน Zone ก็เลือกกันตามความศรัทธาของท่าน (ในตัวอย่างเลือกเป็น us-east 1 (South Carolina) นะครับ)
  • Machine Type ให้เลือกเป็น micro (1 shared vCPU) เท่านั้นครับ เลือกแบบอื่นเสียเงินแน่นอน

เมื่อถึงจุดนี้ ข้อความข้างๆ ของเราจะปรากฏประโยคขึ้นมาว่า “Your first 720 hours of f1-micro instance usage are free this month.” ซึ่งสำคัญมากนะครับ เพราะแปลว่าเราใช้ f1-micro เข้าเงื่อนไขในกลุ่ม Always Free นะครับ

ตามข้อจำกัดแล้ว แต่ละบัญชีจะมีได้เพียงแค่ 1 เครื่องเท่านั้น (มากกว่านี้ก็จ่ายเงินไป ไม่ก็ไปไล่เปิดบัญชีใหม่กันเอง ตามจำนวนบัตรเครดิตที่ท่านมี) ดังนั้นก็ต้องคำนวณกันดีๆ

  • Container อันนี้ข้ามไปได้ ไม่ต้องเลือก (รัน f1-micro จะเอาไปทำ Container ยังไงกันอ่ะ)
  • Boot disk เนื่องจากส่วนนี้สำคัญ เพราะพอเราเลือกปุ๊ป สิ่งที่จะตามมาคือ Linux และพื้นที่เก็บข้อมูลของเรา ค่าปกติที่ให้คือ 10 GB standard persistent disk แต่ใน Always Free ของเรา ได้ถึง 30 GB ดังนั้นเราก็แค่กด Change ครับ

กดปุ่ม Change แล้วก็จะเห็นหน้าจอตาลายขนาดนี้ (ตาลายจริงๆ คุณผู้ชม)

สิ่งที่จะต้องตระหนักคือ จะเลือกระบบปฎิบัติการเป็นอะไรก็ได้ แต่ระบบปฎิบัติการบางตัวในนั้นมีการเก็บค่าลิขสิทธิ์หรือค่าบริการรายเดือน เช่นพวก SUSE Linux Enterprise, Red Hat Enterprise Linux, Microsoft Windows Server

ดังนั้นเมื่อฟรีก็ต้องใช้ Linux แบบ Minimal ซึ่งกินทรัพยากรน้อย (คำสั่งผ่าน SSH อย่างเดียวล้วนๆ – ยินดีต้อนรับสู่โลก Command Line นะครับ) ซึ่งในที่นี้ก็แนะนำเป็น Ubuntu รุ่น 18.04 LTS (LTS ย่อมาจาก Long-term Support คือไม่ต้องมานั่งอัพเดตกันบ่อยๆ อ่ะ) แบบ Minimal ครับ (และจากประสบการณ์เอง ก็ลงง่ายกว่าด้วย)

จริงๆ ก็ใช้ไปเถอะ ฟรีเหมือนกันหมด

อีกส่วนที่ลืมไม่ได้เลยคือ… ใช่ครับ ต้องปรับ Standard persistent disk ให้เป็น 30 GB ครับ (ถ้าเลือกเป็น SSD จะไม่ฟรี) เมื่อเลือกแล้วกด Select แล้วทำงานต่อได้เลย

ช้าก่อน! ลองดูตรวจสอบอีกครั้งว่า ข้อความ “Your first 720 hours of f1-micro instance usage are free this month.” ยังคงขึ้นอยู่นะครับ ถ้าไม่ขึ้นแปลว่าท่านทำอะไรพลาดแล้ว แต่ถ้ายังขึ้นก็ไปต่อครับ

ดูดีๆ นะครับ
  • Identity and API access อันนี้เอาไว้อนุญาตว่าให้ใครเข้ามาควบคุมดูแลเครื่อง และทำอะไรกับเครื่องได้บ้าง ซึ่งก็ข้ามได้ แต่ถ้าใครอยากเล่นก็มาปรับแต่งได้
  • Firewall เนื่องจากเครื่องที่เราตั้งค่าขึ้นมา จะเป็น Web Server สำหรับเว็บไซต์ส่วนตัว ซึ่งเราต้องเปิดให้เข้าทั้ง HTTP และ HTTPS (หลังจากพอเราติดตั้ง SSL ของ Let’s Encrypt เข้าไป ก็จะบังคับเข้า HTTPS อัตโนมัติ ดังนั้นเดี๋ยวไปทำกันตรงนั้น) ก็เลือกทั้งสองอันครับ

เสร็จแล้วก็กดปุ่ม Create เท่ๆ เก๋ๆ เลยครับ แป๊ปเดียวเราก็จะได้เครื่องมาไว้ใช้งานแล้ว

สร้างเสร็จ… เอาไงต่อ?

เครื่องที่เราได้มาใช้งานนี้ จะเป็นเครื่องที่เข้าข่าย Always Free แล้วก็มาพร้อมกับ Internal IP Address และ External IP Address พร้อม ซึ่งตอนนี้เราก็จะเข้าใช้ได้ผ่าน SSH บนหน้าเว็บไปก่อนครับ

อนึ่ง External IP Address ของเราจะถูกเปลี่ยนไปเรื่อยๆ ดังนั้นก่อนที่เราจะเข้าใช้งานจริงก็ควรจะต้อง “ล็อค” IP Address นี้เอาไว้ให้กับเครื่องเรา ซึ่งจะเป็นของตอนหน้าที่เราจะมาพูดกันถึงเรื่องของการเปิด swap ให้กับเครื่องใหม่ของเรา และการล็อค IP Address พร้อมกับเชื่อมโดเมนเข้ากับเครื่องครับ

ไม่ให้เปิด swap ได้ไงอ่ะ เครื่องเปล่าก็ใช้แรมเยอะแล้ว T^T

ไว้เจอกันตอนหน้าครับ

เรื่องแนะนำ

ใช้ GCP f1-micro รันเว็บไซต์ส่วนตัวฟรีๆ – ตอนที่ 4 เปิด swap + ล็อค IP Address

หลังจากเราเปิดบัญชี GCP และ เริ่มรัน Virtual Machine บน Compute Engine ตามขั้นตอนในตอนที่แล้ว มาในตอนนี้เราจะเริ่มต้นเปิด swap และล็อค IP Address กันครับ

LEAVE A REPLY

Please enter your comment!
Please enter your name here