מנוע המחשוב של גוגל מול EC2 של אמזון. הגיע הזמן לעבור?

למרות ההשוואה ההולכת וגוברת בין פלטפורמת הענן של גוגל לשירותי הענן של אמזון (aws), לא הצליחה גוגל להציב איום ממשי בפני EC2 של אמזון... עד עכשיו!
בחודש שעבר, השיקה גוגל לציבור-הרחב את מנוע המחשוב שלה Google compute engine, כאשר ה-micro instance שלהם מתומחר בפחות מ-2 סנט לשעה. אז אתם ודאי תוהים עד כמה טוב מנוע המחשוב של גוגל, האם הוא טוב יותר מ- AWS EC2של אמזון?
האם הגיע הזמן לעבור?

תוצאות המבחנים שערכנו עד כה מרשימות ביותר, אך חשוב לציין שהשירות נמצא עדיין בחיתוליו, וככזה, יכול להעניק את התחושה של מוצר חדש ולעתים בלתי מלוטש. לאחר גילוי נאות זה, אנו יכולים לומר בביטחון ש-GCE מעניק יתרונות ניכרים אל מול ה-AWS EC2, והוא אינו רק מהיר - הוא סופר-מהיר בהשוואה לכל מה שהורגלתם אליו מאמזון במהלך השנים האחרונות. לפניכם מספר נקודות ראויות לציון במנוע המחשוב של גוגל:

  • חיוב לפי חלקי-שעה: חלוקה לדרגות זמן-שימוש עד לדקה בודדת, בהגבלה של מינימום 10 דקות. תכונה זו תהיה שימושית במיוחד בתכנון יכולת-ההתרחבות scaling (של instances או שינוי מבנה upsizing) בהתבסס על עומס או דרישת השרת (server load/ demand)
  • חווית רשת יציבה במיוחד של גוגל: כמה נפילות של אתר גוגל אתם יכולים לזכור?
  • שטח אחסון גדול: אחסון של עד 10TB, כולל תמיכה בחיבור מספר מכונות לאותו הדיסק, עם אפשרות קריאה/כתיבה במכונה בודדת, וקריאה סימולטנית של מספר מכונות מאותו הדיסק.
  • ממשק תכנות היישומים: פשוט בצורה נפלאה, מובן מעצמו וקל לעבודה. הפיירוול שלהם נקראים "פיירוול", vlans נקראים "רשתות", ו-kernels נקראים "kernels". כך שכל מי שמתמצא במערכת UNIX ירגיש מיד בבית.

אך כיצד מודדים ביצועים של שירותי Iaas (תשתית כשירות)? ערכנו בחינת ביצועים ל-EC2 ו-GCE והתוצאות מרשימות ביותר. בבדיקות שערכנו התמקדנו בזמן האתחול (חשוב בעת תפעול עשרות שרתים לאפשר יכולת-התרחבות מהירה scaling), ביצועי הדיסק (חולשה מוכרת של AWS), מהירות הרשת (קריטי לכל ספק שירותי ענן) ומשתנים אחרים. כל המדידות נעשו באזור us-west-1.

זמן אתחול

קשה שלא להתרשם מיכולתו של מנוע המחשוב של גוגל ליצור instancesחדשים במהירות רבה. בממוצע, נדרשות פחות מ-30 שניות להריץ instance חדש הזמין לשימוש מיידי. נקודה מרשימה נוספת היא עקביות זמן האתחול. ב- GCEשל גוגל הסטייה בין זמן-האתחול המינימלי/מקסימלי וזמן האתחול הממוצע הינה פחות מ-12%. לצורך השוואה, זמן האתחול של אמזון EC2נע בין 120 ל-300 שניות, זמן הארוך פי 4 (בימים טובים) ופי 10 בימים קצת פחות טובים. וזאת בלי להזכיר את הסטייה של 40%-50% בין התוצאות השונות.

לפניכם הדגמה קטנה המציגה את יעילות GCE ביכולת התרחבות לפי דרישה באמצעות ריבוי instances:

דיסק

במשך זמן-רב הגדירה אמזון את התקן באחסון ענן עם 'יחידת אחסון אלסטית'Elastic Block Storage (EBS), המאפשרת להקצות נפח אחסון גדול יותר לשרת ללא צורך באתחול מחדש של ה-instance . במקביל, הציגה אמזון כלים לניתוח ביצועי קלט/פלט המסופקים, המעניקים שליטה מסויימת על ביצועי המערכת.
הכוננים של GCE דומים מאוד לאלו של EBS בתפיסה, אך יש להם מספר תכונות ייחודיות אשר אין ביכולתה שלAWS להציע כיום. נתחיל בכוננים, הם יכולים להיות גדולים מאוד. עם הכוננים של GCE ניתן להגיע עד ל-10TB, וניתן כמובן לחבר כוננים מרובים לאותו השרת. עם EC2, המקסימום אליו ניתן להגיע הוא 1TB לכל כונן.
תכונה ייחודית נוספת היא היכולת לשייך את הדיסק ל-instances מרובים, כאשר שרת אחד יכול לכתוב (וכמובן לקרוא) והאחרים יכולים לקרוא מהדיסק. שימושי ביותר כאשר עליך לאפשר גישה לתוכן למספר מכונות ללא הצורך להעתיק/להעביר את המידע תחילה.

GCE מצטיין גם בביצועי דיסק. בעוד EC2 מאפשר לכם להגדיר אספקה של ביצועי קלט/פלט לשליטה בביצועי המערכת, הכוננים של GCE מהירים מעצם הגדרתם. להלן מדידות תפוקת הדיסק במגהבייט לשנייה. ככל שהמספרים גבוהים יותר, הביצועים טובים יותר.

בעוד שני השירותים EC2 ו- GCEמציעים את אותה רמת ביצועים בקריאה, ה- GCEמהיר יותר פי 2 עד 4 פעמים בכתיבה.

רשת

מרבית לקוחותינו עושים שימוש ביותר מחוות-שרתים אחת. בין אם מדובר בשני אזורים שונים אצל EC2/GCE או בענן של ספקים מרובים (multi-vendor clouds). ישנן סיבות רבות לרצות שהיישום שלכם יתקיים ביותר מחוות-שרתים אחת. שרידות היא אחת הסיבות והקירבה למשתמשים שלך היא סיבה נוספת.
גוגל הינה הספק היחיד כיום בעל רשת משל עצמה המקשרת בין כל חוות-השרתים שלה. התוצאה היא מהירויות רשת גבוהות במיוחד הן עבור 'חוות-השרתים-הפנימית' (נכנה אותה LAN) והן עבור 'חוות-השרתים-הבין-רשתית' (נכנה אותה WAN). מהירות שכזאת מאפשרת הטמעת ארכיטקטורת master-slave ויוצרת את היכולת לשכפל כמויות מידע גדולות בין אזורים שונים.

כדי להדגים עד כמה מהירה הרשת של גוגל, העתקנו 2GB של קבצי tar archive בין שני אזורים בארצות-הברית, ולאחר מכן בין אזורים בארצות-הברית ובאירופה.

בעוד המהירות של AWS נעה בסביבות ה-15 מגהבייט לשנייה, GCE דחף את המידע במהירות 300 מגהבייט לשנייה, כלומר מהירות הרשת של GCE גבוהה פי חמש-עשרה מזו של AWS. לא רק התפוקה מרשימה, גם העיכוב מרשים מאוד. בממוצע, העיכוב אצל גוגל היה 20 מילי-שניות לערך, לעומת 90 מילי-שניות אצל EC2. הרשת של גוגל מעניקה סט של אפשרויות חדשות בארכיטקטורת יישומים. חדשות נפלאות למפתחים ולספקי היישומים.

הרבה מעבר לביצועים

מנוע המחשוב של גוגל מציע כמובן הרבה יותר מביצועים מרשימים בצורת זמן אתחול מהיר, מהירות דיסק רשת גבוהה. ישנן עוד תכונות ייחודיות ומרגשות:

- אימג'ים אינם מוגבלים לאזור (region) בו הן נוצרו, כך שניתן ליצור instances חדשים מהאימג' בכל אזור שתרצו, ושני ה-instances אינם חייבים להימצא באותו המקום.

- היכולת להזיז instance בין אזורים שונים. כמו עם אימג'ים, ניתן לקחת instance ולהעתיק את מיקומו לכל אזור שתרצו במהירויות העברה שלא ייאמנו.