ปัญหาอย่างหนึ่งของคนที่ทำเว็บส่วนตัวหลายคน คือมักจะไม่ค่อยได้อัพเดตการเป็นเว็บที่ไม่ต้องทำเงิน และบางคนก็ไม่อยู่ในสถานะที่จะไปเลือกใช้บริการเช่นโฮสติ้ง (hosting) ที่ไหน ซึ่งทางออกก็เป็นว่า ใช้บริการฟรีอย่าง WordPress.com, Wix.com หรือไม่ก็ Blogspot ไปเลย (หากโบราณสักหน่อย)
ผู้เขียนเองก็เข้าข่ายกลุ่มนี้ โดยเฉพาะอย่างยิ่งกับบล็อก (blog) ส่วนตัวที่ร้อยวันพันปีจะอัพเดตสักที แถมจ่ายเงินค่าโดเมนไปก็ใช่ถูก แต่จะให้ลงทุนกับการเช่าโฮสติ้งเฉลี่ยปีละพัน หรือถ้าอู้ฟู่หน่อย ก็เปิด droplet ของ Digital Ocean เดือนละ 5 ดอลลาร์ แต่ไม่ได้อะไรกลับมาก็คงไม่คุ้มเท่านั้น เลยพยายามหาทางออกมาตลอดว่า ตกลงจะเอาไงดี
หวยก็มาลงที่ว่า งั้นเปิด f1-micro ที่อยู่ใน Free Tier ของ GCP (Google Cloud Platform) ก็แล้วตัง ประหยัดเงินดี แถมยังเหมาะกับเว็บส่วนตัวด้วย!
แต่จากประสบการณ์ตั้งค่าถึง 3 วัน 3 คืน ก็บอกให้รู้ว่า ถ้าจะตั้งค่าแล้วทำให้ใช้ได้จริงๆ นั้น เป็นเรื่องที่ยุ่งยากมากกว่าที่คิด เลยมาเขียนๆ เอาไว้ เผื่อใครอยากใช้เป็นแนวทางก็ยินดีนะครับ
Google Cloud Platform: GCP
สำหรับใครหลายคนที่ยังไม่รู้จัก Cloud Computing (เขียนภาษาไทยก็คือ “คลาวด์คอมพิวติ้ง” หรือย่อสั้นๆ คือ “คลาวด์”) อธิบายอย่างง่ายที่สุด มันคือการนำระบบประมวลผลไปไว้บนเครือข่าย แล้วให้บริการได้แบบตามใจสั่ง โดยทั้งหมดไม่ต้องลงทุนเพื่อซื้อโครงสร้างหรืออุปกรณ์อะไรเลย แค่จ่ายค่าใช้งานเท่านั้น
ว่าง่ายๆ คือ เหมือนไปเช่าเขาอยู่เช่าเข้าใช้ แล้วจ่ายค่าเช่าใช้นั่นแหละครับ โดยบริการที่ใช้งานได้จะมีหลากหลายมาก ขึ้นกับว่าอยากจะใช้อะไรเป็นหลัก ก็ไปเปิด/ปิดเอาเองตามใจชอบ

ข้อเด่นของคลาวด์คือเราไม่ต้องมีค่าใช้จ่ายในการดูแลอุปกรณ์ต่างๆ เอง นอกจากนั้นแล้วยังยืดหยุ่นกับงานที่เราอยากใช้ด้วย ตัวอย่างเช่นถ้าสมมติเรามีงานที่ต้องประมวลผลเยอะช่วงหนึ่ง เราก็สามารถดีดนิ้วแล้วเสกคอมพิวเตอร์ช่วยประมวลผลใหม่ได้ทันที พอใช้เสร็จก็ปิดทิ้งเสียเท่านั้นเอง ส่วนข้อเสียนั้นก็มีอยู่พอสมควร เช่น แพงกว่าหากรันบางงาน เป็นต้น (แต่เราจะยังไม่พูดถึงมันตอนนี้)
ส่วนคำอธิบายอย่างง่ายที่สุดของ GCP คือชื่อย่อของ Google Cloud Platform มันคือบริการคลาวด์สาธารณะสำหรับใครก็ได้เข้ามาใช้งาน (IasS: Infrasturcture as a Service) จาก Google ซึ่งตอนนี้ในตลาดก็ยังคงเป็นผู้เล่นรายเล็ก (ลองดูข่าวนี้ประกอบ)
อะไรคือ Always Free?
ปัจจุบัน กลยุทธ์การตลาดของผู้ให้บริการคลาวด์สาธารณะเหล่านี้ มักจะเป็นเรื่องของการแจกเครดิต (เหมือนคูปอง) ให้ผู้ใช้งานทดลองใช้บริการต่างๆ ได้ฟรีๆ ไม่ก็อนุญาตให้ใช้บริการนี้ฟรี 1 ปี จากนั้นก็จะคิดเงินแล้ว
นอกจากนั้น ผู้บริการมักมีสิ่งที่เรียกว่า Perpetual Free หรือฟรีไปเลยแบบพื้นฐาน ผู้ใช้ทุกคนใช้งานได้ฟรีไปเลย และส่วนมากมักจะเป็นบริการจำกัดจำเขี่ยพอรันงานได้สเกลเล็กๆ ขำๆ (หัวเราะทีก็หายไปสัก 50% อะไรประมาณนั้น) โดย Google จะเรียกว่า “Always Free“

ในกรณีของ Public Cloud สามเจ้า คือ Amazon AWS, Microsoft Azure, Google Cloud Platform ทุกคนต่างก็มีบริการนี้หมด แต่ถ้าคิดจะรันเซิร์ฟเวอร์ส่วนตัว ก็คงต้องยกให้ Google เพราะสามารถสร้าง Virtual Private Server (VPS) ของตัวเองได้ฟรี 1 เครื่อง (เจ้าอื่นพยายามหาแล้วแต่ไม่มี ถ้าใครเจอก็มาแลกเปลี่ยนกันได้ครับ)
อย่างไรก็ตาม ของฟรีก็ไม่ใช่ว่าจะทำอะไรได้นะครับ ในกรณีของ GCP สิ่งที่ฟรีสำหรับการสร้าง Virtual Private Server (VPS) ก็คือเครื่องแบบ f1-micro (แบบ non-preemptible หรือปิดเครื่องไม่ได้เมื่อไม่มีการใช้งาน) ซึ่งนี่คือสเปคของเจ้าเครื่องที่ว่านี้ครับ
- 0.2 vCPU (Intel Xeon E5 Hyperthread)
- 0.6 GB RAM
- 30 GB HDD
- 5 GB snapshot
- 1 GB Network Egress จากสหรัฐอเมริกาไปถึงทุกภูมิภาค (ยกเว้นจีนและออสเตรเลีย)
ดูจากเสปคแล้วก็บอกได้เลยว่า จำกัดจำเขี่ยมาก (ใครยังใช้มือถือหรือคอมพิวเตอร์แรมไม่ถึง 1 GB บ้าง?) แถมความจำกัดจำเขี่ยนี่ ก็ยังถูกกำหนดด้วยว่า เจ้าเครื่องนี้ต้องวางอยู่ในภูมิภาค (region) ที่มันกำหนดไว้ด้วย! และอยู่ในสหรัฐอเมริกาทั้งหมด ซึ่งมี
- Oregon: us-west1
- Iowa: us-central1
- South Carolina: us-east1
นอกจากนั้นแล้ว ยังบังคับให้เราเปิด Network Premium Tier อีก ซึ่งเราจะส่งข้อมูลขาออกได้เดือนละ 1 GB ข้อมูลเต็มๆ คงต้องรบกวนไปดูที่นี่ได้เลย ซึ่งพอถึงจุดนี้ หลายคนอาจจะออกอาการหน้าบูด แล้วก็ทิ้งมันไปซะอย่างนั้น
แต่เดี๋ยวก่อน ผมจะบอกว่า จริงๆ มันรันได้นะครับ และบล็อกที่ท่านกำลังอ่านอยู่ มันก็รันบน f1-micro นี่แหละ!
สิ่งที่ควรรู้ก่อนที่จะเริ่มต้น

แน่นอนว่าข้อจำกัดจำเขี่ยเหล่านี้ ก็ทำให้หลายอย่างต้องจำกัดตามไปด้วย รวมถึงคุณเองก็ต้องลงมือตั้งค่าต่างๆ ด้วยตนเอง ไม่มีแจกฟรี (อยากได้ต้องทำเอง) ซึ่งผมก็รวมคำถามมาให้ประเมินคร่าวๆ แล้วก็คือ
- คุณมีความรู้ หรือพร้อมจะเรียนรู้ Linux และ Linux Command ที่ใช้กับ Terminal (หน้าจอแบบสมัย DOS) หรือไม่?
- คุณยอมรับในข้อจำกัดของเครื่องแบบ f1-micro ได้หรือไม่?
- เว็บไซต์ต้องรองรับคนเยอะมากหรือไม่?
- คุณแฮปปี้ที่จะต้องตั้งค่าต่างๆ เองหรือไม่?
- คุณเข้าใจหลักการเบื้องต้น (basic concept) ของระบบเครือข่ายและคอมพิวเตอร์หรือไม่?
- คุณพร้อมจะมีค่าใช้จ่าย (บ้าง) หรือไม่?
ผมคิดว่านี่เป็นคำถามที่ต้องเตรียมตัวก่อนที่จะเริ่มใช้งานจริง และเว็บไซต์นี้ก็มาจากคำถามเหล่านี้ทั้งสิ้น ซึ่งถ้าคำถามเหล่านี้ถูกตอบชัดเจนแล้ว ยินดีด้วยครับ คุณเตรียมที่จะเดินทางต่อได้เลย
แต่หนทางนี้ขรุขระและไม่ง่ายนะครับ ไว้เดี๋ยวตอนต่อไปผมจะเล่าให้ฟังว่าจะต้องทำอะไรบ้าง ทว่าหากทำได้แล้วชีวิตก็จะสบายครับ
(ภาพหลักโดยคุณ Panumas Nikhomkhai จาก Pexels)