Grid Computing และ Cloud Computing ในมุมของ Ian Foster

Dr. Ian Foster (เครดิตภาพจาก Argonne National Laboratory)

คงมีหลายคนสงสัยว่าในยุคที่ cloud computing กำลังร้อนแรง ได้รับความนิยมมากขึ้น แล้ว grid computing จะเป็นยังไงต่อไป? จนอาจมีคนถามว่า grid computing สูญพันธุ์ไปแล้วหรือยัง? เพื่อคลายข้อสงสัย ผมขอยกคำพูดของ Dr. Ian Foster หรือ “the father of the Grid” มาแปะไว้ให้ท่านอ่านแล้วกันนะครับ

In industry, the term “grid computing” has been used, rather oddly, as sort of a synonym for parallel computing (e.g., Oracle 10-G) and sometimes to mean what the BOINC guys used to call (confusingly) “distributed computing”–i.e., harnessing idle desktops.

Continue reading

จาก Grid Computing ไปถึง Cloud Computing ตอนที่ 2

Timeline จาก Grid ไป Cloud ตัดจากสไลด์ในงาน Intel Blogger Day 2008

การให้บริการระบบคอมพิวเตอร์ให้ได้อย่างบริการสาธารณูปโภคนั้น เป็นจุดเริ่มต้นของแบบจำลองหรือโมเดลของการให้บริการที่เรียกว่า Utility Computing (หรือ “บริการสาธารณูปโภคของการประมวลผล”) ซึ่งเป็นเนื้อหาสำคัญของบทความนี้ สำหรับท่านที่สนใจ สามารถกลับไปอ่านบทความที่เกี่ยวข้องได้ที่ จาก Grid Computing ไปถึง Cloud Computing ตอนที่ 1

นิยามคำว่า utility computing ก็เป็นอะไรที่ตรงไปตรงมาตามชื่อ ดังนี้

Utility computing เป็นการให้บริการทรัพยากรคอมพิวเตอร์ (เช่น พลังการประมวลผลของซีพียู และพื้นที่จัดเก็บข้อมูล รวมถึงแบนด์วิธของเครือข่าย) และบริการดังกล่าวสามารถวัดออกมาเป็นหน่วยของการใช้บริการได้เหมือนกับบริการสาธารณูปโภค (เช่น น้ำประปา และ ไฟฟ้า เป็นต้น)

Continue reading

อุปสงค์และอุปทาน ในมุม Grid และ Cloud

ภาพแสดงความสัมพันธ์ระหว่างอุปสงค์ อุปทาน และราคา (ภาพจาก วิกิพีเดีย)

ผู้ให้บริการที่มักเห็นได้ทั่วไปใน grid computing มักจะให้บริการทรัพยากรแบบอุทิศตัวเองมากกว่าการค้าขายที่มี “เงิน” เป็นตัวผลักดันให้ระบบสามารถดำเนินไปในทิศทางที่รองรับกับความต้องการของผู้ใช้ได้ ก็อย่างที่ทราบกันว่า อุปสงค์กับอุปทาน (demand and supply) ควรดำเนินไปในทิศทางที่สมดุลกัน และเงินที่ตีเป็นราคา (price) ของทรัพยากรที่ให้บริการผู้ใช้มีบทบาทสำคัญที่ทำให้อุปสงค์กับอุปทานมีความยืดหยุ่นได้ (ในทางเศรษฐศาสตร์เรียกคำนี้ว่า elasticity) และด้วยเหตุที่ grid computing ไม่ได้เล่นเกมอุปสงค์และอุปทานอย่างตรงไปตรงมา จึงเป็นหนึ่งในสาเหตุหลายๆสาเหตุที่ทำให้ cloud computing ประสบความสำเร็จในภาคธุรกิจมากกว่า grid computing ตามตัวอย่างต่อไปนี้

Continue reading

ประกาศ Intersection of Cloud and Grid Computing

ตั้งแต่ขึ้นปีใหม่มา ผมยังไม่ได้อัพเดทหน้าเว็บตัวเองเลย วันนี้ ขอประกาศหัวข้อบรรยายที่ผมจะเข้าไปฟังในเดือนนี้แล้วกัน หัวข้อแรกชื่อ “Intersection of Cloud and Grid Computing” ชื่อมันก็บอกยี่ห้อนะครับว่าเป็นเรื่องอะไร คือ หลายท่านอาจจะมองว่า Cloud กับ Grid มีอะไรเหมือนๆกัน จนกระทั่งอาจจะบอกว่าเป็นสิ่งเดียวกัน แต่จริงๆแล้วมันก็มีอะไรที่แตกต่างกันอยู่ ทั้งในภาคทฤษฎีและปฏิบัติ จริงๆแล้ว ผมพยายามอัพเดทบทความของผมเองในเรื่องที่เกี่ยวกับก่ารบรรยาครั้งนี้อยู่ แต่ว่าสมองของผมยังไม่พร้อมจะเขียน (มันพร้อมเมื่อไหร่ มันก็มาแบบไม่คาดคิด) ตอนนี้ก็เลยออกมาได้แค่ จาก Grid Computing ไปถึง Cloud Computing ตอนที่ 1 ก็รอตอนที่ 2 ต่อไปครับ

ได้ข่าวคราวอะไรดีๆมา ก็จะมาอัพเดทให้ฟังแล้วกันนะ เอารายละเอียดการบรรยายหัวข้อ “Intersection of Cloud and Grid Computing” ไปอ่านกันแล้วกันครับ ใครมาเที่ยวหรือทำงานที่สิงคโปร์จะแวะมาฟังก็ได้นะ

Speaker : James Pang, Vice President, Product Management Platform Computing

There is much debate raging over whether cloud computing and grid computing are one and the same. In fact, there are many similarities and one key difference separating these burgeoning fields. Both cloud and grid propose an architecture that masks the complexity of managing thousands of commodity servers from their users. Consequently, those managing a grid or cloud require specialized management tools designed for large scale implementation – making it possible to manage a large number of servers without requiring an army of administrators. In both cases, users often serve themselves and pay for their usage as a utility. The key difference, however, is in the dynamic nature of resource availability, as well as how demand for the utility is generated. This session will explore these similarities and differences and discuss the future of cloud and grid computing. Continue reading

จาก Grid Computing ไปถึง Cloud Computing ตอนที่ 1

Timeline จาก Grid ไป Cloud ตัดจากสไลด์ในงาน Intel Blogger Day 2008

เนื่องจากมีคนถามผมมาเยอะเหลือเกินว่า Grid ต่างจาก Cloud อย่างไร ? ผมก็ได้ให้คำตอบไปแล้ว จนท้ายที่สุด เหมือนเป็น FAQ ของคำถามเรื่อง Cloud เลยก็ว่าได้ครับ แต่ผมไม่เคยได้เขียนลง blog ซะที ครั้งนี้ก็ขอซะหน่อยแล้วกัน ก่อนที่ blog ผมจะกลายเป็นแนะนำอาหารการกินไปซะก่อน อย่างไรก็ดี บทความนี้จะไม่ใช่การเปรียบเทียบ Grid ต่างจาก Cloud อย่างไร แต่ผมจะขอย้อนเวลาไปเมื่อต้น 1990 (จริงๆอยากย้อนไปมากกว่านี้ แต่มันจะยาวกว่านี้ด้วย) แล้วจากนั้น ก็จะชี้ให้เห็นถึงวิวัฒนาการจาก Grid ไปถึง Cloud แม้ไม่ได้ลงละเอียดไปมากเท่าไหร่ เดี๋ยวจะกลายเป็น lecture ไปในที่สุด แต่ผมขอการสาธยายสิ่งได้ร่ำเรียนและได้ประสบพบเห็นมากับตัวเองนะครับ

ก่อนหน้านี้ ผมได้เข้าประชุมกับ director ของ HP Labs ชื่อ Chris Whitney เขาได้มาพูดถึงงานวิจัยที่ HP กำลังทำ เป็นเรื่องที่เกี่ยวกับ Cloud Computing ผมรู้สึกว่า เอ … มันก็ Grid Computing นี่เอง มากไปกว่านั้น ผมเคยคิดเหมือน Ellision จาก Oracle ที่เคยเหน็บแนมว่า Cloud เป็นเหมือนแฟชัน เป็นเพียงแค่คำฮิต

การได้ดูตัวอย่างบริการและผลิตภัณฑ์ที่เรียกว่า Cloud Computing จนได้ไปสัมผัสบริการและผลิตเหล่านั้น เมื่อไปเทียบกับสิ่งที่ Grid Computing เคยเป็นมา เราก็พบแล้วว่ามันแตกต่างจาก Grid Computing รวมไปถึงการได้ใกล้ชิดกับบริษัท/ทีมงานที่เขาพัฒนาผลิตภัณฑ์และบริการเหล่านั้น ยิ่งย้ำความเข้าใจเรามากขึ้นแล้วว่า เราเข้าใจถูกแล้ว อาจารย์ของผม (ฟรานซิส) และผม  เรามองว่ามีความเหมือนระหว่าง Grid กับ Cloud และเราก็เห็นอะไรที่แตกต่าง ส่วนที่แตกต่างมีนัยสำคัญมากกว่าที่จะมาบอกว่านี่ยังเป็น Grid Computing อยู่ Cloud Computing จึงไม่ใช่การบัญญัติคำศัพท์ขึ้นมาใหม่เพื่อใช้เรียกแทน Grid Computing อย่างไรก็ดี เรามองว่า Cloud Computing เป็นวิวัฒนาการด้วยการบูรณาการ ดังนั้น ไม่ใช่เรื่องแปลกเลย ที่เราไปนึกว่า Cloud Computing เหมือนกับหลักการอื่นๆที่เคยมีมา อย่างเช่น Grid Computing

หมายเหตุ ผมขอเอาภาพจากสไลด์ของผมที่ใช้บรรยายในงาน Intel Blogger Day 2008 ในหัวข้อ Blogging in the Clouds มาใช้ประกอบบทความนี้นะครับ และก่อนอื่น ขอบอกก่อนว่า ขอแบ่งบทความออกเป็น 2 ตอน ตอนที่ 1 นี้เป็นการย้อนยุคไปหา Volunteer Computing ในช่วงกลางทศวรรษ 90 แต่จะไปหาแบบคร่าวๆ จากนั้นค่อยบินไปหา Grid Computing ในช่วงก่อนขึ้นศตวรรษใหม่ในปี 2000 ครับ

(แจ้งข่าว สำหรับท่านที่กำลังค้นหาหัวข้อวิจัยและพัฒนาเกี่ยวกับ Cloud Computing สามารถไปอ่านบทความของผมได้ในหัวข้อชื่อ หมวดงานวิจัยเกี่ยวกับ Cloud Computing)

Continue reading

ความแตกต่างระหว่างคลัสเตอร์กับกริด

สืบเนื่องจากคุณ​ 0xffeeddaa ได้ตั้งคำถามว่าคลัสเตอร์กับกริดต่างกันอย่างไร โดยคำถามนี้ปรากฏในข่าวที่ผมลงในเว็บ Blognone ชื่อหัวข้อ TCG@NUS: ตัวอย่างกริดในรั้วมหาลัย ผมจึงตอบเป็น comment ไว้ในข่าวดังกล่าว และเพื่อเป็นประโยชน์ต่อไปสำหรับผู้ที่มีคำถามนี้ ผมขออนุญาติคัดลอก comment ของผมมาแปะไว้ในที่นี้

ในฝั่งวิชาการมันก็ต่างกันอยู่ครับ คลัสเตอร์ (Cluster) คือกลุ่มของคอมพิวเตอร์ที่กระจุกตัวรวมกันบนเครือข่ายหนึ่งๆ (โดยส่วนใหญ่อยู่บนเครือข่ายวงเดียวกัน) แล้วก็แชร์ทรัพยากรร่วมกัน (เช่น CPU และ storage) โดยมีซอฟต์แวร์ที่ช่วยบริหารและเชื่อมต่อให้เกิดเครือข่าย Cluster ดังกล่าว ดังนั้น เราสามารถนำ Cluster ไปประมวลผลร่วมกันในงานเดียวกันแบบขนาน หรืออาจจะเอางานหลายๆงานซึ่งเป็นอิสระจากกัน ส่งไปประมวลผลบน Cluster ก็ได้

ถ้าเป็นกริด (Grid) ตามอุดมคติที่ Globus หรือตามที่ Ian Foster เจ้าพ่อ Grid เคยกล่าวไว้ มองว่าเป็นการเชื่อมทรัพยากรคอมพิวเตอร์ระหว่างหน่วยงานหรือองค์กรที่มีนโยบายแตกต่างกัน หรือเป็นคนละองค์กรกันไปเลย โดย Grid จะทำให้เชื่อมความหลากหลายของทรัพยากรและนโยบายให้เป็นหน่วยเดียวกันได้ ก็กลายเป็นกลุ่มกลุ่มเดียวเสมือนเป็นองค์กรเดียวกัน และจากนั้น เราจะนำงานไปประมวลผลแบบขนานหรือเอางานเดี่ยวๆหลายๆงานไปประมวลผล ก็สามารถทำได้เช่นกันเหมือนกับ Cluster

หากมองในฝั่งธุรกิจ คำศัพท์ Grid กับ Cluster มันกำกวมครับ (ซึ่งไม่ใช่ Cloud Computing เท่านั้นที่กำกวม) โดยบริษัทหลายเจ้า (แม้กระทั่ง IBM, Oracle, และ Sun) มองว่า Grid กับ Cluster มันก็เรื่องเดียวกันแหละครับ คือเชื่อมต่อคอมพิวเตอร์หรือรวมทรัพยากรคอมพิวเตอร์เข้าหากัน แล้วร่วมกันประมวลผลหรือแก้ไขปัญหา

ถ้า IBM เขาจะบอกว่า Grid คือ การพัฒนาโปรแกรมให้เป็นหน่วยย่อยๆที่สามารถกระจายการประมวลผลไปให้คอมพิวเตอร์หลายเครื่องได้ (ซึ่ง Cluster ก็เป็นงั้น) ส่วนทาง Sun บอกว่า Grid แบ่งออกเป็น Cluster Grid, Campus Grid, และ Global Grid ถ้ามองง่ายๆก็คือไล่ตั้งแต่ระดับแลนของหน่วยงานหนึ่งๆ(Cluster Grid), Campus Grid แลนหรือแวนของสถาบันเดียวกัน (ระดับองค์กร), จนกระทั่ง Global Grid หรือระดับแวนระหว่างองค์กร

ประชุมทางไกลกับChief ArchitectจากPlatform

วันนี้ผมตื่นแต่เช้าเพื่อเตรียมตัวเข้าประชุมทางไกลในเวลา 9 โมงเช้าสิงคโปร์ (3 ทุ่มตามเวลาแคนนาดา) เป็นการสนทนากับKhalid Ahmedซึ่งเป็นถึงChief ArchitectของบริษัทPlatform จริงๆต้องเรียกว่าเป็นการโทรศัพท์คุยกันผ่านSkypeกับKhalidที่นั่งอยู่โตรอนโตประเทศแคนนาดา โดยผู้ร่วมสนทนามีผม,อาจารย์ของผมและก็Khalid … ต้องขอบคุณLaurence ที่ได้แนะนำให้ผมได้มีโอกาสคุยกับKhalid …. หลังจากคุยกับKhalid ผมก็ต้องยอมรับโดยดุษฏีเลยว่าPlatformเขาทำงานวิจัยทางด้าน HPC และ Virtualization ถึงขั้นสุดยอดจริงๆ(เรียกแบบวัยรุ่นก็เรียกว่า ขั้นเทพ) ผลงานที่โด่งดังของ Platform อย่างเช่น LSF ที่เป็น Metascheduler ที่ถูกใช้กันอย่างกว้างขวาง

Khalidได้เล่าถึงงานวิจัยที่ทางPlatformเคยได้ทำและที่กำลังทำอยู่ ส่วนทางฝั่งผมก็ได้แลกเปลี่ยนประสบการณ์งานวิจัยด้วยเช่นกัน และอาจารย์ผมก็ได้คุยกันถึงปัจจัยที่มีผลต่อCloud Computingที่น่าจะเอามาเป็นหัวข้อวิจัยร่วมกับทางPlatformได้ โดยตอนนี้เรายกประเด็นเรื่องทรัพยากรธรรมชาติกับการประมวลผล (เพราะปัญหาโลกร้อน Global Warming มาแรง) และเราใช้ศัพท์คำว่า Green Computing มาเป็นประเด็นในการสนทนาในช่วงท้าย และได้วางแผนในเรื่องแนวทางการวิจัยสำหรับเรื่องนี้ หากจะให้เล่าหลักการพื้นฐานของ Green Computing ก็คือเราจะจัดสรรทรัพยากรไปประมวลผลโปรแกรมและทำให้ประหยัดทรัพยากรธรรมชาติ (เช่น ประหยัดพลังงานไฟฟ้า)ได้มากอย่างไร เช่น ต้องจัดสรรทรัพยากรคอมพิวเตอร์จำนวนเท่าไหร่, เวลาไหน, จากที่ไหนรวมไปถึงจะพัฒนาฮาร์ดแวร์และซอฟต์แวร์อย่างไรให้กินไฟต่ำ เป็นต้น  แต่ทางเราจะเน้นไปทางด้าน scheduling หรือ resource provisioning เพื่อสร้างสมดุลระหว่าง Computing Efficiency กับ Power Efficiency หรือสมดุลระหว่างประสิทธิภาพของทรัพยากรคอมพิวเตอร์กับทรัพยากรธรรมชาตินั่นเอง … ในกลุ่มบริษัทที่ให้บริการ Cloud Computing ก็เป็นห่วงเป็นกังวลในหัวข้อนี้มากเลยทีเดียวครับ การเลือกทำเลสำหรับวางData Centerที่ใกล้กับโรงกลั่นไฟฟ้าแบบสะอาดและการใช้Virtualizationก็เป็นจุดเริ่มต้นที่ดีสำหรับการลดปัญหาโลกร้อน

ท่านสามารถติดตามหัวข้อวิจัยที่บริษัทPlatformเป็นผู้สนับสนุนได้ที่ http://www.hpccommunity.org/

From Grid Enabled to Cloud Enabled

(โลโก้จากนิตยสาร LINUX MAGAZINE)

บทความจากเว็บ Linux Magazine ในหัวข้อ “Cloud Enabled” เป็นบทความที่น่าสนใจมากๆ และเหมือนผู้เขียนจะมีการใส่คำพูดประชดประชันเข้าไปด้วย แต่ผมก็เห็นด้วยกับผู้เขียนน่ะครับ เนื้อหาเป็นอย่างไรติดตามได้ โดยผมจะแทรกความคิดเห็นของผมเองด้วยตัวหนังสือสีแดง (ไปๆมาๆความคิดเห็นของผมอาจจะเสนอมากกว่าก็ได้) Continue reading

มุมมองในเรื่องCloud Computingของผู้เชี่ยวชาญ

จากเว็บของ Sys-Con Media มีหัวข้อชื่อ Twenty Experts Define Cloud Computing ซึ่งเป็นการนิยามความหมาย รวมถึงการอุปมาอุปไมยนิยามของ Cloud Computing โดยผู้เชี่ยวชาญ 20 ท่าน ผมได้สรุปนิยามไว้เพียงบางส่วน โดยตัดคำพูดมาเพียงบางตอนของบางท่านเท่านั้น และเป็นการเรียบเรียงด้วยภาษาของผมเอง โดยคงความหมายของต้นฉบับเอาไว้ และผมยังได้สอดแทรกการวิเคราะห์ของผมเองแนบไว้ด้วยตัวหนังสือสีแดง

ดูความหมายของCloud Computingได้ที่บทความ “นิยามคำว่า Cloud Computing

Omar Sultan ยกตัวอย่างหนึ่งเปรียบเทียบ Cloud Computing ไว้ว่า

“ถ้าผมจะอธิบายลูกค้าถึงความหมายของ Cloud Computing ผมจะยกตัวอย่างผ่านคำว่า Cloud Dinning หรือมื้ออาหารในกลุ่มเมฆ :) สมมติว่าผมอยู่ที่บ้านและผมมีหน้าที่ทำอาหารเลี้ยงปากท้องสมาชิกในบ้าน ถ้าลูกน้อยของผมมาอ้อนวอนว่าอยากทานอาหารอิตาลี…ผมจะทำอาหารให้ลูกผมทานเองหรือสั่งอาหารอิตาลีจากข้างนอกมาดี? สมมติว่าผมไม่มีเครื่องครัว ไม่มีวัตถุดิบที่จะเอามาทำอาหารล่ะ ดังนั้น ผมจำเป็นต้องโทรสั่งอาหารหรือวัตถุดิบจากข้างนอกซะแล้ว เช่นกันกับ Cloud Computing เรามี application ที่ต้องการการสนับสนุนจาก cloud computing (ได้แก่ ทรัพยากรและบริการจากองค์กรอื่นๆ)”

Continue reading

นิยามคำว่า Cloud Computing

Cloud Computing คืออะไร

นี่คือการนิยามคร่าวๆของผมสำหรับความหมายของ Cloud Computing

Cloud Computing คือวิธีการประมวลผลที่อิงกับความต้องการของผู้ใช้ โดยผู้ใช้สามารถระบุความต้องการไปยังซอฟต์แวร์ของระบบCloud Computing จากนั้นซอฟต์แวร์จะร้องขอให้ระบบจัดสรรทรัพยากรและบริการให้ตรงกับความต้องการผู้ใช้ ทั้งนี้ระบบสามารถเพิ่มและลดจำนวนของทรัพยากร รวมถึงเสนอบริการให้พอเหมาะกับความต้องการของผู้ใช้ได้ตลอดเวลา โดยที่ผู้ใช้ไม่จำเป็นต้องทราบเลยว่าการทำงานหรือเหตุการณ์เบื้องหลังเป็นเช่นไร

ผมได้นิยามคำว่า Cloud Computing ในรูปแบบที่ (น่าจะ) เข้าใจง่ายขึ้นที่ นิยามคำว่า Cloud Computing ภาค 2 สำหรับท่านที่กำลังค้นหาหัวข้อวิจัยและพัฒนาเกี่ยวกับ Cloud Computing สามารถไปอ่านบทความของผมได้ในหัวข้อชื่อ หมวดงานวิจัยเกี่ยวกับ Cloud Computing

รายละเอียดของนิยามมีอีกครับ เข้ามาติดตามได้เลย

Continue reading

เริ่มเปิดประเด็น Cloud Computing

“ท้องฟ้าของกรุงเทพมหานครในวันที่ 2 กรกฏาคม พ.ศ.2551″

จริงๆผมกะว่าจะแนะนำCloud Computingมาตั้งแต่โพสต์ที่ผ่านมาแล้วครับ แต่ผมยังหาเวลาที่ลงตัวไม่ได้และสมองของผมยังไม่เกิดไอเดียพอจะโพสต์เนื้อหาวิชาการในช่วงนี้ แต่สืบเนื่องมาจากblogของคุณSoowoiเพื่อนบ้านของผมสงสัยว่านิยามเป็นภาษาไทยของCloudเป็นอย่างไร ผมมานั่งคิดว่า…อืมนั่นน่ะสิ? เราจะนิยามมันว่าอย่างไรดี? เพราะจริงๆแล้วก็ยังไม่มีใครนิยามแบบฟันธงกันสักคนเลยครับ :) เมื่อผมได้กล่าวถึงCloud Computing ในblogอย่างน้อยก็ 3 บทความแล้ว แต่ผมยังไม่เคยได้นิยามความหมายของมันเลยสักครั้ง ดังนั้นผมเลยคิดว่าถึงเวลาแล้วที่ผมจะแนะนำว่าCloud Computingคืออะไรกันแน่ แต่ขอแจ้งไว้ก่อนว่าผมไม่ได้สรุปว่าCloudต้องมีความหมายอย่างที่ผมจะกล่าวต่อไปนี้ … เอาอย่างนี้แล้วกันนะครับ ก่อนอื่น..เพื่อเป็นการเริ่มต้นที่ดีในการตีความหมายของคำว่าCloud Computing ขอให้เดินออกไปข้างนอกในที่กลางแจ้ง จากนั้นมองขึ้นไปบนฟ้า ผมถามคุณหน่อยว่า “คุณเห็นก้อนเมฆบนท้องฟ้าหน้าตาอย่างไร?” และ “เวลาคุณเหม่อมองฟ้าคุณนึกถึงอะไร?” นั่นแหละครับคือความหมายของคำว่า Cloud ผมเชื่อว่าคุณมองเมฆบนฟ้าไม่เหมือนกับที่ผมมอง :) และเมื่อไหร่ก็ตามที่เรามองขึ้นฟ้า แล้วนึกถึงโซโลชันทางไอทีสำหรับใช้ในบริษัทหรือใช้สำหรับแก้ไขปัญหาทางวิทยาศาสตร์ เมื่อคุณคิดได้เช่นนี้ แปลว่า คุณกำลังนึกถึง Computing in the Clouds และพร้อมจะเข้าสู่ยุคแห่งการประมวลผลในกลุ่มเมฆที่ชื่อ Cloud Computing แล้วครับ

บทความของCloud Computing จะเริ่มทะยอยออกมานะครับ เข้าไปอ่านบทความแรกเรื่อง “นิยามคำว่า Cloud Computing” ได้เลยครับ

คุยกับDirectorทางฝั่งPlatform Computing

สำนักงานของบริษัทPlatform ตั้งอยู่ที่Fusionopolis ที่ทำงานสวยมากและวิวก็ดีด้วย

ช่วงนี้ผมเดินสายตระเวนไปหาบริษัทต่างๆในสิงคโปร์เพื่อคุยกับผู้คนเพื่อหากำลังสนับสนุนงานวิจัยและในวันพรุ่งนี้ผมก็จะไปฟังบรรยายของหัวหน้าทางสายงานวิจัยของYahoo! สำหรับในวันนี้ผมได้พบกับLaurence ซึ่งเป็นdirectorของทางPlatform Computing ผมไม่สามารถกล่าวรายละเอียดของหัวข้อวิจัยที่คุยกับบุคคลต่างๆได้มากเนื่องจากเป็นข้อมูลลับของทางศูนย์วิจัยของผมเองครับ อย่างไรก็ดีผมจะให้ข้อมูลของเขาที่ได้ประกาศต่อทางสาธารณะไปแล้ว

บริษัท Platform Computing เรียกสั้นๆว่า Platform เป็นบริษัทที่เชี่ยวชาญทางด้าน High Performance Computing มากว่า 16 ปี มีเชื้อสายแคนนาดา และก็โด่งดังในฝั่งสหรัฐอเมริกาและข้ามไปยังยุโรป กระทั่งในเอเชียของเรา โดยบริษัทมีสาขาตั้งอยู่หลายแห่ง ในเอเชียก็มีจีน ญี่ปุ่น กับสิงคโปร์ ผลิตภัณฑ์ส่วนใหญ่จะเป็นซอฟต์แวร์ระบบขนาดใหญ่สำหรับติดตั้งและบริหารระบบคลัสเตอร์และกริด และผมก็เพิ่งทราบว่าPlatformเองก็มีผลิตภัณฑ์ที่เป็นเทคโนโลยี Virtualization และ Cloud Computing ด้วย โดยผลิตภัณฑ์นี้มีชื่อว่า Platform VM Orchestrator (VMO) ซึ่งจริงๆแล้วก็ตั้งอยู่บนฐานของ Xen เรียกได้เลยว่า Xen น่าจะเป็น De Facto ด้าน Virtualization ในตลาด Cloud Computing ไปแล้วก็ว่าได้ ท่านสามารถดูรายละเอียดของบริษัทPlatformเพิ่มเติมได้ที่ http://www.platform.com พอผมได้เข้าไปในเว็บของบริษัทก็ทำให้ทราบว่าภาพยนตร์แอนนิเมชันเรื่อง Kung Fu Panda ก็ได้ใช้ผลิตภัณฑ์ของPlatformสำหรับการติดตั้งและบริหารคอมพิวเตอร์คลัสเตอร์ในการสร้างหนัง [อ้างอิง]

Laurenceได้นำเสนอผลงานที่วิจัยและพัฒนาร่วมกับทางมหาลัยโตรอนโตประเทศแคนนาดา ภายใต้ซอฟต์แวร์ชื่อ Snowflock จุดประสงค์หลักของงานวิจัยนี้ก็เพื่อเร่งความเร็ว (Speedup) ให้กับการสตาร์ท Virtual Machine โดยเฉพาะเวลาที่ Virtual Machine จำเป็นต้องย้ายที่อยู่จากคอมพิวเตอร์เครื่องหนึ่ง (ซึ่งเป็นPhyiscal computer) ไปยังอีกเครื่องหนึ่ง และเป็นการย้ายที่อยู่ขณะทำงานหรือruntime เราเรียกการย้ายที่อยู่เช่นนี้ว่า Live Migration โดยทางทีม Snowflock สามารถเร่งความเร็วในการสตาร์ทของVirtual Machine เมื่อย้ายไปยังที่ใหม่ได้ภายในเวลา 100 ms.  และผลงาน Snowflock นี้ก็ได้นำไปเสนอในงาน Xen Summit North America 2008 อีกด้วย ท่านสามารถดูรายละเอียดของ Snowflock ได้ที่ http://compbio.cs.toronto.edu/snowflock/. Laurence ยังได้แนะนำหัวข้อวิจัยในด้าน Virtual Machine กับ Cloud Computing ไว้ 1 หัวข้อ ซึ่งก็เกี่ยวข้องกับผลงานต่อเนื่องของSnowflockนี่แหละครับ เกี่ยวกับเรื่อง Virtual Machine Placement แต่ผมไม่ขอกล่าวรายละเอียดแล้วกันนะครับ

การคุยกันกับLaurence ผมประทับใจมากๆ เพราะเขาจะเป็นกันเองมากและให้ข้อมูลต่างๆโดยไม่หวงแหนเลย และตอนที่ผมเช็คแฮนด์กับLaurence เขายังทักผมว่าเขาจำผมได้ เขาจำได้ว่าผมเป็นคนไทยและทักว่าผมเป็นลูกศิษย์อาจารย์ภุชงค์ โอโห…ผมเคยเจอเขาแบบผ่านๆมาเมื่อปี 2005 ที่งานGridAsia ผ่านไปเกือบ3ปีเขายังจำผมซึ่งเป็นผู้น้อยได้อีก เขาเล่าให้ผมฟังว่าเขาเป็นเพื่อนกับอาจารย์ภุชงค์มาสิบปีได้แล้ว เขาเลยถือว่าผม(ซึ่งเป็นเพียงลูกศิษย์ของอาจารย์)เป็นคนกันเอง และต้องขอบพระคุณอาจารย์ภุชงค์ ณ ที่นี้อีกครั้งครับ Laurenceบอกผมว่าอาจารย์ได้แนะนำผมให้กับเขาไว้นานมาแล้ว และเขาบอกว่าเขาจะช่วยเหลือผมในการสนับสนุนงานวิจัยเท่าที่เขาสามารถช่วยได้ … ขอบพระคุณทั้งสองท่านคืออาจารย์ภุชงค์และLaurence ณ ที่นี้อีกครั้งครับ

มาเที่ยวงาน GridAsia กัน

 

ช่วงนี้ผมเอาโน้ตบุ๊คของผมไปเคลมก็เลยเป็นเหตุให้ผมไม่มีคอมให้ใช้ที่บ้าน อย่างวันนี้ซึ่งเป็นวันเสาร์ผมก็ต้องมาที่ทำงานเพื่อใช้คอมที่ทำงาน ในช่วง 3 – 4 วันที่ผ่านมานี้ผมก็มีเรื่องปวดหัวมากมาย ทั้งเรื่องงานและก็เรื่องส่วนตัว บ่นเรื่องงานอย่างเดียวแล้วกันนะครับ เหมือนกับว่าผมจะไปได้ดี แต่ก็ลำบากใช่น้อย เพราะตอนนี้ผมก็ได้ทำงานวิจัยร่วมกับบริษัท HP และก็หน่วยงานชื่อA*STAR (คล้ายๆ NECTEC ของไทย) ในหัวข้อที่เกี่ยวกับ Cloud Computing และผมหวังว่าจะเป็นหัวข้อวิทยาพนธ์ปริญญาเอกของผมไปในตัวด้วย และช่วงนี้ผมก็ต้องช่วยทีมงานของผมที่มหาลัยในการตีพิมพ์ผลงานลงconferenceชื่อ GridAsia ที่จะจัดขึ้นที่สิงคโปร์ในปลายปีนี้ โดยงานครั้งนี้เขาได้เชิญคนจาก GGF (หรือ OGF) และ Globus ก็เลยเป็นเหตุให้พวกเราต้องปั่นงานออกมาให้ดีมีคุณภาพ เพราะจะได้โชว์ผลงานให้คนทางฝั่งยุโรปกับอเมริกาได้เห็นศักยภาพในด้านGrid Computing ในฝั่งเอเชีย

โดยงานที่ผมได้เข้าไปแจมกับเพื่อนของผม(ชื่อ Junwei) เพื่อส่งเข้าไปในงานประชุมGridAsia ครั้งนี้มีชื่อว่า MOGAS เป็นซอฟต์แวร์ระบบสำหรับมอนิเตอร์ทรัพยากรในเครื่องข่ายGrid Computing โดยเริ่มทำมาตั้งแต่ปี2005ได้แล้วครับ ในเวอร์ชันที่ผ่านๆมา MOGAS สนับสนุน Globus Toolkit 2 หรือ GT2 และก็มีการปรับปรุงให้ทำงานได้ทั้ง GT2 กับ GT3 และในเวลาต่อมา GT4 ถูกพัฒนาออกมาและถูกใช้อย่างแพร่หลายมากขึ้นเพราะมีแนวโน้มว่าจะเป็นมาตรฐานของGrid Computingเลยกว่าได้ พอมาเป็นGT4แล้ว หลายๆอย่างก็เปลี่ยนไปครับ อย่างเช่นระบบสำหรับจัดส่งงานและติดตามงาน (Job Submission and Job Monitor)ซึ่งMOGASจำเป็นต้องพึ่งพา เมื่อเป็น GT4 แล้วระบบเบื้องล่างถูกปรับเปลี่ยนไปแบบถอนรากถอนโคนเปลี่ยนไปเป็น Web Services เกือบหมดแล้ว (คงเหลือไว้แค่ Pre-WS ที่คาดว่าจะถูกยกเลิกในเวอร์ชันหน้าๆ) และเราก็เลยต้องเปลี่ยน MOGAS ให้ทันสมัยตาม Globus Toolkit ด้วย (จริงๆ GT4 ออกมาได้นานโขแล้วแต่ผู้คนเพิ่งเริ่มเปลี่ยนไปหาGT4ไปทีละนิด เพราะยังไม่อยากทิ้งGT2 ซึ่งถูกใช้อย่างแพร่หลายมาก่อน) และเราก็ต้องใส่ฟีเจอร์หลายๆอย่างลงไปเพื่อให้ MOGAS ทำงานได้หลากหลายขึ้น และหวังว่าคงมีอะไรเด็ดๆไปโชว์ในงาน Grid Asia เพื่อเป็นหน้าเป็นตาให้กับชาวเอเชีย (พูดซะเวอร์ :) )

ประเทศไทยของเราก็ใช่ว่าน้อยหน้านะครับ ที่ผ่านๆมาซอฟต์แวร์สำหรับมอนิเตอร์ทรัพยากรบนGrid Computing ของฝีมือคนไทยเราก็มีชื่อเสียงโด่งดังระดับโลกมาแล้วชื่อ SCMSWEB ของหน่วยงานThaiGrid และผมเคยได้ร่วมทำงานกับพี่ๆของโครงการนี้มาแล้ว และขณะนี้ผมก็ได้ประสานงานกับThaiGrid เพื่อร่วมกันประสานซอฟต์แวร์ 2 ตัวนี้คือ MOGAS กับ SCMSWEB เข้าด้วยกัน แต่ทว่าช่วงนี้ทาง MOGAS ต้องการพัฒนาให้ทำงานบนGT4ก่อน

เอาเป็นว่าถ้าหากท่านไหนที่สนใจส่งผลงานเพื่อเข้าร่วมประชุม GridAsia 2008 ครั้งนี้ก็เชิญได้นะครับ เราจะได้มาเจอกัน และถ้าเจอกันผมจะเป็นไกด์พาเที่ยวสิงคโปร์เองครับ :)

รายละเอียดเพิ่มเติมของงาน GridAsia 2008 ที่ http://gridasia.ngp.org.sg/2008/

คุยกับ Director ของHP Labs ในหัวข้อ “Cloud Computing”

IBM Blue Cloud ตัวอย่างหนึ่งของ Cloud Computing จากยักษ์ใหญ่สีฟ้า IBM

วันนี้ผมมีโอกาสได้ทานกาแฟและร่วมสนทนากับ Chris Whitney ซึ่งเป็น Director ของ HP Labs ศูนย์วิจัยของบริษัท Hewlett Packard (HP) มีสำนักงานใหญ่ตั้งอยู่ที่ Palo Alto, California ประเทศสหรัฐอเมริกา โดยอาจารย์ที่ปรึกษาของผม Francis Lee ได้แนะนำให้ผมได้รู้จักกับ Chris เพื่อปูทางสำหรับการทำงานวิจัยร่วมกันกับบริษัท HP ในหัวข้อเรื่อง Cloud Computing และได้ฟัง Chris กล่าวถึงแนวโน้มในงานวิจัยด้าน Cloud Computing ซึ่ง Chris ได้เล่าหัวข้อวิจัยไว้หลายเรื่อง อย่างไรก็ตาม ผมไม่สามารถเปิดเผยเนื้อหาที่คุยกันกับ Chris ได้มากในตอนนี้เพราะเป็นความลับขององค์กร สำหรับใครที่ยังไม่รู้จัก Cloud Computing ว่าคืออะไร ก็เข้าไปอ่านได้ใน Wikipedia ก่อนนะครับ แต่ผมขอสรุปสั้นๆแบบเชิงเทคนิคให้ฟังว่าจริงๆแล้วมันก็มีหลักการคล้ายกับ Grid Computing และ Utility Computing แต่ทว่า Cloud กำลังประสบความสำเร็จอย่างมากในภาคธุรกิจ ต่างกับ Grid ที่โด่งดังมากในภาคการศึกษาและวิจัยทางวิทยาศาสตร์กับวิศวกรรม โดยความคิดเห็นส่วนตัว ผมมองว่า Cloud เป็นการผสมผสานระหว่าง Grid Computing กับ Utility Computing และมีแนวโน้มสูงที่จะดึงความสามารถของ Semantic Web และ Web Services ผ่านสถาปัตยกรรม SOA รวมถึงการผสมผสานของเทคโนโลยี Virtual Machine … เอาแค่นี้ก่อนแล้วกัน ตัวอย่างของ Cloud Computing ที่ทำออกมาขายกันอย่างจริงจัง ได้แก่ Amazon EC2 กับ GOGRID จริงๆแล้วยังมีผลิตภัณฑ์อีกหลายตัว และมีบริษัทยักษ์ใหญ่หลายเจ้าที่ออกผลิตภัณฑ์หรือกำลังอยู่ในช่วงพัฒนา ผมขอให้ link ของเว็บที่กล่าวถึง Cloud Computing ของบริษัทต่างๆดังนี้ IBM, Microsoft, Google, HP, Sun Microsystems และ Dell เป็นต้น นอกจากนี้ลองไปค้นหาข้อมูลจาก google ดูก็ได้ โดยใช้คีย์เวิร์ดว่า “cloud computing” คุณจะพบว่ามีข่าวและเว็บของบริษัทต่างๆได้ให้ความสนใจกับ cloud computing เป็นอย่างมาก เมื่อสัปดาห์ก่อนผมได้อ่านข่าวจากเว็บผู้จัดการ ก็ยังมีข่าวที่เขาสัมภาษณ์ Divid Barnes ตำแหน่ง Technology Evangelist อย่างเป็นทางการคนแรกของ IBM โดยเขาได้พูดว่า “Cloud Computing จะเป็นคำตอบที่โลกธุรกิจต้องการ” (ไปอ่านข่าวเพิ่มได้ที่เว็บ manager.co.th คลิ้กที่นี่ได้เลย) … ผมเล่าแค่นี้ก่อนแล้วกัน ใครสนใจก็ไปติดตามได้ใน link ที่ผมใส่ในที่นี้เอาเองก่อน แล้วผมจะกลับมาเล่าให้ฟังต่อไปเมื่อมีโอกาสครับ

ปล. Chris Whitney มีชื่อและนามสกุลคล้ายกับนักบาส NBA

Peer-to-Peer กับการเก็บเกี่ยว CPU

The image is from www.ricethailand.go.th 

สำหรับบทความนี้ ผมจะกล่าวถึงการนำ Peer-to-Peer มาประยุกต์ในการดึงเอาความสามารถของ CPU ที่อยู่ในเครื่องคอมพิวเตอร์ที่ต่ออยู่กับเครือข่ายมาใช้งานให้เกิดประโยชน์มากกว่าการเปิดคอมพิวเตอร์ทิ้งไว้เฉยๆ เช่น ในช่วงเวลาเราพักสายตาเป็นเวลา 20 นาทีจากการใช้คอม, ปวดหนักจำเป็นต้องวางมือจากคอมไปเข้าห้องน้ำ, ตอนพักเที่ยงต้องไปทานข้าวและเตร็ดเตร่ข้างนอก, และเหตุการณ์ต่างๆที่เราลืมปิดเครื่องหรือเปิดไว้โดยตั้งใจ แต่ไม่ได้ใช้งานอะไร เป็นต้น หรือแม้แต่ในขณะที่เราใช้งานคอมพิวเตอร์ไม่เต็มที่ เช่น เปิด screensaver ค้างไว้, นั่งอ่าน ebook และเปิดดูคลังรูปภาพทีละรูปอย่างตั้งใจ เป็นต้น เราอาจมองว่าการเปิดคอมทิ้งไว้หรือใช้คอมไม่เต็มกำลังมันจะกินไฟเท่าไหร่กัน (คอมหนึ่งเครื่องกินไฟนิดเดียว แต่ถ้ามองทั้งประเทศก็กินไฟเยอะน่าดู) อย่างไรก็ตาม มันก็ถือว่าเป็นการใช้คอมอย่างไม่เกิดประสิทธิภาพเต็มที่…โอเคครับ เรามาใช้โปรแกรมแบบ P2P สำหรับเก็บเกี่ยว (เหมือนเก็บเกี่ยวพืชผล) เอาเวลาที่เราเปิดคอม(โดยไม่ได้ใช้ประโยชน์)มาใช้ประโยชน์ให้มากที่สุดหรือมากกว่าเดิม สำหรับใครที่ไม่ทราบว่า P2P คืออะไร สามารถอ่านผลงานผมย้อนหลังได้ที่ http://javaboom.wordpress.com/?p=24

Continue reading