הענן של אמזון

חברת אמזון, הפעילה בתחום המסחר האלקטרוני מאז שנת 1994, הכריזה ביולי 2002 על מודל לענן מחשוב המבוסס על Web Services. הענן של אמזון מציע את חבילת שירותי אחסון הנתונים העשירה ביותר הקיימת כיום. החבילה כוללת שירותים מנוהלים לאחסון קבצים ואובייקטים, שירותיי בסיסי נתונים מבוססי RDBMS כגון (MySQL, Oracle, SQL Server), שירותי NoSQL וכן שירותי Block Storage.
AWS – Amazon Web Services
השם הכולל לשרותי הענן של אמזון.
EC2 – Elastic Compute Cloud
שרותי מחשוב הענן של AWS. מאפשרים להריץ מכונות וירטואליות בגדלים וסוגים שונים (החל ממיקרו – מכונה וירטואלית בעלת 2 יחידות עיבוד, המקבילה למעבדים ו – 613 מגה זיכרון ועד High-Memory Quadruple Extra Large בעלת 26 יחידות עיבוד ו – 68.4 גיגה זיכרון). המכונות מסוגלות להריץ מערכות הפעלה שונות והתשלום עליהן הוא לפי שעות שימוש. ניתן להריץ מכונות EC2 בארבע אזורים גאגורפיים שונים (ארה"ב מזרח ומערב, אירופה ואסיה) ובכל אזור גאוגרפי קיימים 2-3 Availability Zones, המקבילה לחוות שרתים, על מנת לקבל שרידות גבוהה יותר.
S3 – Simple Storage Service
תשתית שרותי האחסון לשמירה ואחזור כל כמות של נתונים, בכל עת, מכל מקום ברשת. שרותי S3 מתאפיינים בשרידות גבוהה, מחיר נמוך ואפשרויות גדילה כמעט בלתי מוגבלות. הנתונים ב – S3 נשמרים ב – Buckets, להם ניתן לשייך הרשאות גישה. חשוב לציין שהגישה ל – S3 אינה נעשת כמו לדיסק רגיל (ראה EBS) אלא כאוביקטים דרך ה – API או כלי צד שלישי.
EBS – Elastic Block Store
"דיסקים" וירטואליים (Volume), הניתנים להגדרה בנפרד ממכונות EC2 וירטואליות. דיסקים אלו יכולים להיות משויכים למכונות וירטואליות ולתפקד בדיוק כמו דיסק רגיל. שרותי EBS מתומחרים לפי גודל הדיסק וכמות השימוש בו. בנוסף לשמירת מידע, מציע שרות ה – EBS יכולות גיבוי (מבוסס על S3) ו – Snapshot (יעיל מאד בזמן עדכוני תוכנה). חשוב לציין שמכונות EC2 שאינן מבוססות על EBS, מוגדרות כמכונות "זמניות" שאינן שומרות מידע לאחר כיבוי (הן למעשה מושמדות). אם רוצים להריץ מכונה שאפשר יהיה להדליק ולכבות (כמו שרת רגיל) ולשמור את השינויים לאחר הכיבוי, המכונה חייבת להיות מבוססת על EBS (מה שמייקר אותה מעט).
AMI – Amazon Machine Image
השימוש העיקרי ב – AMI הוא להרצת מכונות מתוך תבניות מוכנות מראש. AMI הוא למעשה תבנית של מכונה ובספרייה של אמזון יש כמה מאות (אם לא אלפים) סוגי מכונות (מערכות הפעלה שונות, תוכנות, App Servers, בסיסי נתונים וכו'). כל מכונת EC2 מבוססת למעשה על AMI. רוב התבניות הן בחינם אבל יש גם לא מעט תבניות בתשלום, כמו למשל התבנית של Zend Server, בה הלקוח משלם כל שעה על שימוש באפליקציה של Zend, בנוסף לעלות של מכונת ה – EC2. השימוש האחרון ב – AMI הוא יצירת תבניות משתמש. כל אחד יכול ליצור AMI (ואף לשחרר אותו לשימוש ציבורי) ולהשתמש בו להפעלת מכונות חדשות. אם יש לכם צורך במכונה עם מערכת הפעלה מסויימת, אפליקציות והגדרות ואתם לא רוצים לבנות אותה כל פעם מחדש, כל שעליכם לעשות הוא לבנות אותה פעם אחת ולייצא ל – AMI.
SimpleDB
כשמו כן הוא – בסיס נתונים פשוט (non-relational) המאפשר לשמור ולקרוא למידע באמצעים פשוטים, ללא המורכבות של בסיסי נתונים סטנדרטיים. SimpleDB מבוסס על S3 ומתאפיין במהירות רבה, יכולת גדילה, מחיר זול ושרידות גבוהה (נוצרים עותקים מרובים של הנתונים בצורה אוטומטית).
RDS – Relational Database Service
למעשה מדובר בגרסת הענן של אמזון ל – MySQL, מה שהופך את שימוש ב – RDS עם אפליקציות קיימות שנכתבו עבור MySQL לפשוט מאד. השרות כולל גיבוי של הנתונים, Snapshots, יצירת רפליקציות בצורה מאד פשוטה ועוד. RDS מתומחר בצורה דומה מאד ל – EC2 ומאפשר לבחור את עוצמת המכונה שתריץ את השרות (בהתאם לעומס ולביצועים הדרושים), החל ממכונה קטנה של פחות מ – 2GB זכרון ועד 68GB זכרון.
ELB – Elastic Load Balancing
רכיב רשת המנתב בקשות רשת למספר שרתי EC2 בהתאם לעומס על השרתים. כמו כל שאר השרותים, מדובר בתשלום על פי שימוש (נפח תנועה) ויכולת הגדרה מאד פשוטה. ה – API של אמזון שימושי מאד במקרה של ELB ומאפשר הוספת שרתים ל – Cluster בצורה אוטומטית.
Auto Scaling
שרות המאפשר להוסיף ולהוריד מכונות EC2 בצורה אוטומטית בהתאם לעומס על המכונות.
CloudFront
שרות הפצת הקבצים של אמזון (בדומה למערכות CDN אחרות) המאפשר לשרת בקשות של משתמשים לקבצים בצורה יעילה ומהירה הרבה יותר, על ידי פריסה רחבה של שרותי ההפצה על מנת לקרב (גאוגרפית) את המשתמשים לתוכן.
CloudWatch
CloudWatch משמש את משתמשי EC2 ו – RDS על מנת לנתר את ביצועי השרת שלהם, כולל CPU, IO, שטח דיסק רשת וכו'. כמו רוב הכלים של אמזון, הנתונים מהשרות זמנים בקונסולת הניהול וגם דרך ה – API של אמזון.