ระยะนี้มีข่าวค(ล)าว(ด์)เกี่ยวกับ cloud computing ออกมาเยอะอย่างต่อเนื่อง และผมก็ไม่เคยจะได้พูดถึงข้อจำกัดของ cloud computing ซักเท่าไหร่ จนช่วงหลังมีคนเข้ามาถามผมทางอีเมลเยอะมากเกี่ยวกับเรื่องข้อจำกัดของ cloud computing โดยเฉพาะในเรื่องความน่าเชือถือของ cloud computing
เนื่องจากผมไม่อยากพิมพ์เมลตอบยาว ผมเลยตอบสั้นๆว่า cloud computing มันหนีไม่พ้นกฎไตรลักษณ์หรอก หากขยายความอีกนิดหน่อย คือ cloud computing มีลักษณะ 3 ประการ ดังนี้
- อนิจจัง – cloud computing ไม่เที่ยงแท้แน่นอน และก็ไม่สามารถให้ความน่าเชือถือแก่ผู้ใช้ได้ 100%
- ทุกขัง - cloud computing ไม่แข็งแรงคงทน 100% และก็ไม่ได้ปลอดภัย 100% แม้จะใช้เทคโนโลยีทันสมัยขนาดไหนก็ตามแต่ มีโรงไฟฟ้าปั่นไฟให้กับดาต้าเซ็นเตอร์ของตนก็ตามแต่ cloud computing ล่มได้อยู่ดี
- อนัตตา – cloud computing เป็นเพียงแค่นามสมมติที่คนบัญญัติชื่อขึ้นมา แม้มันจะดูเหมือนหรือแตกต่างจากเทคโนโลยีอื่นๆก็ดี มีนิยามอันเลิศหรูก็ดี มีแผนการขายและโฆษณาน่าสนใจขนาดไหนก็ดี แต่ cloud computing ก็ไม่มีอะไรให้คนหรือสรรพสิ่งอื่นๆยึดติดหรือพึ่งพิงได้เลย 100%
cloud computing เป็นเทคโนโลยีที่มนุษย์เราสร้างสรรขึ้นมา โดยการต่อยอดมาจากเทคโนโลยีอื่นๆอีกมากมาย โดย cloud computing กำเนิดมาจากความต้องการ (หรือ “กิเลส”) ของผู้ให้บริการ cloud computing ที่ต้องการเพิ่มผลประกอบการ โดยลักษณะของ cloud computing ที่ผู้ให้บริการพยายามสร้างสรรขึ้นมาเพื่อเพิ่มผลประกอบการได้นั้นมีลักษณะ (อันเป็น “อัตตาสมมติ”) ดังนี้
- บริการสาธารณูปโภคที่เข้าถึงได้ทุกที่ - บริการสาธารณูปโภคจะถูกให้บริการโดยองค์กรอื่น เพื่อให้บริการทรัพยากรบางอย่างที่สามัญหรือเป็นที่ต้องการโดยทั่วไป (เช่น น้ำ ไฟ หากแต่ใน cloud จะเป็น CPU storage และซอฟต์แวร์ต่างๆ เป็นต้น) และบริการดังกล่าวควรเข้าถึงได้สะดวกและทั่วถึง และ “อินเทอร์เน็ต” ก็เป็นคำตอบของ cloud อีกทั้งผู้ให้บริการสามารถทำเงินได้จากลูกค้าทั่วโลกได้ด้วย … และรูปภาพ “ก้อนเมฆ” ก็เป็นสัญลักษณ์ของอินเทอร์เน็ต (ลองไปหาดูตัวอย่างรูปนี้ได้ในโปรแกรม Visio) เราก็เลยเอารูป ”ก้อนเมฆ” มาเป็น “อัตตา” ให้เป็นชื่อเรียกปิดบังความเป็นอนัตตาของ cloud computing ได้บ้างนั่นเอง
- ขายได้เยอะๆด้วยราคาสมเหตุสมผล - บริการ cloud ต้องเข้าถึงลูกค้าที่มีมากมายมหาศาลจากทั่วโลก หากราคาของบริการแพงเกิน จำนวนลูกค้าย่อมน้อยลงเพราะลูกค้ามีทางเลือกเยอะแยะ แต่ขายถูกเกินไปก็ไม่ได้กำไรมากพอหรืออาจจะขาดทุน ยิ่งกว่านั้นหากบริการมีไม่เพียงพอต่อความต้องการของลูกค้า ผู้ให้บริการย่อมเสียลูกค้าบางส่วนหรือส่วนที่ใหญ่ๆไป ดังนั้น วิธีการแก้ปัญหานี้ ก็คือ ต้องลงทุนเยอะเพื่อเตรียมทรัพยากรจำนวนมาก และต้องลงทุนให้ชาญฉลาดด้วย เช่น เลือกทำเลเพื่อสร้างดาต้าเซ็นเตอร์ที่กว้างใหญ่แต่ราคาถูก อากาศดี มีค่าไฟถูก ต้องลดโลกร้อนให้ได้เพื่อส่งเสริม greenpeace และจะได้ประหยัดเงินค่าไฟ และลดภาษีคาร์บอน(ถ้ามี) และต้องมีกลยุทธ์ในการจัดซื้อทรัพยากร อย่างเซิร์ฟเวอร์ว่าต้องซื้อจำนวนเท่าไหร่ถึงจะเรียกว่าเพียงพอต่อจำนวนลูกค้า และก็อาศัย economies of scale โดยซื้อทรัพยากรคอมพิวเตอร์เยอะๆแล้วเอามาแบ่งขายในรูปบริการที่มีราคาสมเหตุสมผล(คือ ไม่แพงไป ไม่ถูกไป) แต่ให้กำไรเยอะในระยะยาว เป็นต้น
- เอาใจลูกค้า - เกริ่นก่อนว่า ไม่มีผู้ให้บริการ cloud รายใดตอบสนองความต้องการของลูกค้าที่แตกต่างหลากหลายได้ 100% หรอก หากแต่ผู้ให้บริการพยายามหารูปแบบการให้บริการที่ลูกค้าปรับแต่งได้ง่าย หรืออาจจะเป็นบริการที่ลูกค้าโดยส่วนใหญ่ต้องการได้ เช่น ผู้ให้บริการแบบ IaaS ก็เตรียมเซิร์ฟเวอร์เพื่อโฮสต์ virtual machine ของลูกค้าและลูกค้าสามารถปรับแต่งซอฟต์แวร์บน virtual machine หรือเลือกสเปคของ virtual machine ที่มีฮาร์ดแวร์ใกล้เคียงกับความต้องการ เป็นต้น อย่างไรก็ดี หากเอาใจลูกค้าบางกลุ่มที่เป็นลูกค้าด้านมืด เช่น พวก hacker ฝ่ายอธรรม เป็นต้น cloud ก็ย่อมเป็นอาวุธอันน่ากลัวอย่างที่เราเห็นข่าวค(ล)าว(ด์)มาบ้าง
- มีประกัน - อย่างที่เกริ่นไว้นะครับว่า cloud มีลักษณะอนิจจัง ทุกขัง อนัตตา ดังนั้น ไม่มีบริการ cloud ไหนหรอกครับที่ยั่งยืนหรือไม่มีวันล่ม ดังนั้น ผู้ให้บริการ cloud จึงต้องให้การรับประกันกับลูกค้าว่า บริการของตนให้ความน่าเชื่อถือกับลูกค้าได้ระดับใด มีฝ่ายซัพพอร์ทดูแลลูกค้าในระดับไหน อย่างเช่น เราจะเห็นว่าผู้ให้บริการหลายรายมีเอกสารข้อตกลงที่เรียกว่า service-level-agreement (SLA) เพื่อบ่งบอกระดับการให้บริการว่าทำได้ในระดับใด หลายเจ้าระบุความคงอยู่ของบริการว่าระบบของบริการอยู่ทนได้นานแค่ไหน (เช่น สามารถล่มได้กี่ครั้งต่อปี เป็นต้น) และระบุถึงแนวทางในการชดเชยความเสียหายที่จะเกิดขึ้น และหากว่ามีผู้บริการ cloud เจ้าไหนให้ประกันว่า คงทน 100% นั้น อย่าไปเชื่อว่าบริการนั้นไม่มีวันล่ม หากแต่ว่าถ้าเมื่อไหร่ที่บริการนั้นล่มแม้แต่เสี้ยววินาที ผู้ให้บริการจะต้องชดเชยค่าเสียหาย อย่างไรก็ดี ผู้ให้บริการเขาก็มีนิยามคำว่า “ล่ม” ของเขานะ ดังนั้น อ่านเอกสาร SLA ให้ดีๆก่อนตัดสินใจเลือกผู้ให้บริการ
ขี้เกียจพิมพ์แล้วน่ะ … เอาเป็นว่า cloud ก็มีลักษณะคร่าวๆตามนั้น แต่อีกครั้งว่า cloud รวมไปถึงสรรพสิ่งต่างๆนั้นหนีไม่พ้นกฎไตรลักษณ์ คุณจะใช้หรือจะชอบของค(ล)าว(ด์) คุณจะไปพัฒนาระบบให้สุดยอดระดับไหนก็ตาม แม้ระบบจะดีกว่า cloud computing ที่มีให้บริการในปัจจุบันนี้ก็ตาม ระบบทุกระบบย่อมมีข้อดีและเสียในตัวของมันไม่มากก็น้อยและย่อมล่มได้บ้างเป็นบางเวลา
หากคุณยังไม่ถอดใจไปจากการใช้ cloud แต่คุณยังไม่แน่ใจพอว่ามันจะคุ้มหรือเปล่า ผมแนะนำให้คุณอ่านเอกสาร SLA ของผู้ให้บริการที่คุณจะเลือกให้รอบคอบ สงสัยอะไรก็ติดต่อไปถามเลย และถ้าจะดีลองทำ cost benefit analysis ดูครับว่าคุณจะได้ดีได้เสียอะไรบ้างจากการใช้หรือไม่ใช้บริการ cloud computing
ตามชะแว๊บมาอ่าน อิอิ
ขอบคุณครับ
ขอบคุณที่มาเยี่ยมนะครับ
Pingback: Cloud ล่มได้ และการทำไม่ให้ล่มนั้นมีต้นทุนสูง | JavaBoom Collections
สวัสดีครับ ผมมีคำถามที่ผมไม่เข้าใจสักที
รบกวนช่วยนิยามหน่อยครับว่า Cloud คืออะไร และไม่ใช่อะไร
ไม่แน่ใจว่าตัวเองเข้าใจครบถ้วนครับ
สวัสดีครับคุณ PaPaSEK
ผมคงไม่อธิบายยาวนะครับ มันคุยกันได้นาน จริงๆผมนิยามใน blog แล้วครับ ที่ blog นี้แล้ว ลองดูได้ที่ http://javaboom.wordpress.com/2008/07/23/whatiscloudcomputing/ กับ http://javaboom.wordpress.com/2008/10/23/whatiscloudcomputing2/
อย่างไรก็ดี cloud มันเป็นศัพท์แฟชั่นน่ะครับ อย่าไปสนใจนิยามของมันครับ เพราะผู้ให้บริการแต่ละเจ้าก็มีฟีเจอร์รวมถึงนิยามของ cloud ของตนเอง โดยรวมมันก็เหมือนการบริการออนไลน์ที่เราเคยเห็นในอดีต เช่น โฮสต์เครื่องเซิร์ฟเวอร์เสมือนแบบ VPS ที่เลือกสเปคได้, โฮสต์แอพได้เหมือนกับบริษัทบริการโฮสต์ เป็นต้น สิ่งที่ cloud พยายามทำให้แตกต่างคือ ลูกค้าสามารถซื้อได้ตามใช้งานจริงแบบไม่มีผูกมัดรายเดือนหรือรายปี (สมัยก่อนมี cloud ก็มีอย่างนี้อยู่)และการให้การรับประกันลูกค้าด้วยเอกสาร SLA (ซึ่งบริการแบบดั้งเดิมก็มี) แต่ที่เด่นๆก็คงเรื่อง elastic คือ ยืดขยายทรัพยากรได้อัตโนมัติ (แต่เอาเข้าจริงๆ มันก็ยุ่งยากอยู่และมีต้นทุนสูง) ซึ่งลักษณะของผู้ให้บริการ cloud จริงๆต้องมีทรัพยากรขนาดใหญ่มากๆกระจายอยู่ทั่วโลก เพื่อตอบสนองต่อความต้องการผู้ใช้ที่หลากหลายและไม่แน่นอนจากทั่วโลก เช่น google, microsoft, ibm, amazon เขาสามารถลงทุนกับทรัพยากรขนาดใหญ่เช่นนี้ได้
สรุปนะครับ … ผู้คนไม่ควรยึดติดกับอัตตาของ cloud มากนะครับ cloud ความหมายหนึ่งในภาษาอังกฤษมันก็แปลว่า “ไม่ชัดเจน” หากอยากจะใช้ cloud หรือไม่ได้เป็น cloud ก็ตาม ควรศึกษาก่อนว่า ผู้ให้บริการ เขาให้บริการอะไรเราบ้าง มีบริการหรือฟีเจอร์อย่างที่เราอยากได้ไหม และเราสามารถเข้าถึงฟีเจอร์เหล่านั้นได้ไหม (คือ เรามีทักษะและประสบการณ์ ความรู้ที่จะใช้ไหม) เพราะฟีเจอร์อาจจะใช้ยากเกินไปก็ได้ ท้ายที่สุดคือ ดูว่าผู้ให้บริการเขาประกันคุณภาพไว้อย่างไรบ้างครับ
โอ้ขอบคุณครับ
เป็นเพราะว่าแต่ละเจ้าก็ใช้คำว่า Cloud ในแนวทางของตัวเองนี่เอง ผมก็เลยงงว่าตกลงแล้วมันคืออะไรกันแน่
เดี๋ยวผมขออ่านบล็อกที่ให้ลิงค์ไว้ก่อนครับ ถ้างงแล้วเดี๋ยวจะตามไปกวนถึง SG เลย ฮ่า ฮ่า
ด้วยความยินดีครับ
Pingback: เมื่อ Cloud ล่ม อย่าลืมนึกถึง SLA | JavaBoom Collections
อ่านเท่าไหร่ก็ไม่เข้าใจ เพิ่งจะมาเข้าใจก็ blog นี้นี่แหละ สรุปไว้เข้าใจง่ายมากเลยค่ะ
ขอบคุณมาก ๆ ค่ะ
ครับผม