צעדים ראשונים בעולם מחשוב הענן עם Oracle 11gR2 & AWS - ilDBA Portal

צעדים ראשונים בעולם מחשוב הענן עם Oracle 11gR2 & AWS

21/08/2011 | פורסם על ידי

תקציר :

לאחרונה נושא מחשוב הענן (Cloud Computing) הפך לבאז חדש בעולם ה-IT ולא רק שם.
מחשוב הענן מאפשר לקרב טכנולוגיות מתקדמות לכל רוחב הקשת של צרכני הקצה. ישנן הרבה סיבות  עסקיות לשימוש במחשוב ענן, אך בעיני הטכנולוגיה מעניינת יותר מכל.
במסמך הזה אתאר את מהלך הקמת שרת  Oracle11gR2 RDBMS ע"ג OEL 5 תוך שימוש בפלטפורמת שרותי הענן של Amazon, הקרויה Amazon Web Services או בקיצור AWS.

רקע :

עפ"י אתר ויקיפדיה, מחשוב ענן מחשוב או מחשוב בענן (באנגלית: Cloud computing) הוא פיתוח המאפשר להשתמש בכוח עיבוד ומחשוב דרך האינטרנט.
הביטוי "ענן" הוא דימוי ל המבוסס על הצורה הגרפית בה מתארים את הרשת בתרשימי זרימה (Computer network diagram).
בענן המחשוב נמצאים הנתונים והלוגיקה העסקית של מערכות המחשוב בשרתים ובמרכזי מחשבים והם מופעלים מיחידות קצה מרוחקות.
כתוצאה מכך אין המשתמשים צריכים לרכוש ולנהל משאבי ומערכות מחשוב ובמקום זאת שוכרים אותה כשירות מספקים שמעמידים כוח מחשוב שהגישה אליו תהיה מרחוק דרך האינטרנט.
מאפיין זה מאפשר להימנע מהוצאות גדולות על רכישת ציוד ותוכנות תשתית ומהצורך לנהל אותן. ענן המחשוב מאפשר למשתמש שליטה וויסות של עוצמת המחשוב הנדרשת, כך שבעיתות עומס ניתן לשכור כוח מחשוב גבוה יותר ובעתות רגיעה להקטין את ההוצאה. בחלק מהמימושים של התפיסה גם נחסך הצורך לפתח או לנהל יישומים. קטגוריה בתוך המחשוב בענן קרויה IaaS,דהיינו תשתית כשירות.
בקטגוריה הזו ספקי המחשוב בענן מספקים לצרכני הקצה תשתית שלמה הכוללת שרתים וירטואליים, אחסון, שרותי גיבוי וכן סל תוכנות צד שלישי כגון אפליקציות RDBMS , ERP וכו'. בצורה זו, הצרכן הסופי מקבל מעין One-stop shop לכל צרכי התשתית שלו. ספקי מחשוב בענן נוהגים להתחבר עם יצרני תשתיות מסורתיים יותר ע"מ לאפשר לצרכן הסופי להשתמש בפלטפורמות הללו.
AWS הינו שרות מוקם ע"י Amazon אשר מאפשר לקבל סביבת מחשוב בענן. אמזון פיתחה כמה שירותים בתחום הזה. אציין רק את השירותים שבהם השתמשתי :

Elastic Compute Cloud: מאפשרים להריץ מכונות וירטואליות בגדלים וסוגים

Elastic Block Store: דיסקים וירטואליים (Volume), הניתנים להגדרה בנפרד ממכונות EC2 וירטואליות

ניתן למצוא הרבה שירותים ופרטים נוספים באתר שלהם : AWS.

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

כחלק מהבאז הכללי, חב' Oracle התחברה עם Amazon ע"מ לפתוח בפני קהיליית משתמשי Oracle את מוצרי הדגל שלה בצורה מהירה, נוחה וזולה .
Oracle מציעה לשימוש את המוצרים המובילים שלה בעולם הIT: RDBMS 11gR2, Oracle EBS 12.1.3, Oracle, Oracle Fusion Middleware וכו'.

למי IaaS מתאים:

לדעתי, התשתית מתאימה לחב' Startup אשר מתנסות לראשונה בטכנולוגיות של Oracle.
הרישיון של Oracle הוא רישיון OTN, כלומר משמש לפיתוח. כמובן שאין שום מניעה שחברות בכל גודל ייהנו משרותי הIaaS.

מהו הידע הטכנולוגי הנדרש ע"מ להקים סביבת Oracle על AWS:

לפי ניסיוני, נדרש ידע בסיסי בכל אחד מן התחומים הבאים ע"מ להקים סביבת Oracle על AWS:

  • Oracle DBA
  • Security
  • System administration
  • כמובן שיכולת חיפוש משובחת באינטרנט יכולה בהחלט לעזור (כמו בכל דבר…).

אי אפשר בלי כמה מילים על עלויות…

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

ועוד הערת אזהרה :

גם שרותי AWS אינם חסינים מנפילות, כפי שניתן לקרוא כאן.

אם כן,הבא נתחיל :

בכדי להתחיל בהקמת database על הAWS יש צורך בכמה רכיבים בסיסיים :

  1. 1.    חשבון בAWS
  2. 2.    דפדפן מסוג FireFox הכולל את התוסף ElasticFox. זהו תוסף אשר מביא את הAWS לFireFox. ניתן להוריד את התוסף מכאן
  3. 3.    putty או כל ssh client אחר

יצירת מכונה וירטואלית:

הבנייה מתחילה מהתחברות לAWS:

לחיצה על Sign in using out secure server תביא אותנו למסך הבא :

לחיצה על Instances בחלק השמאלי של המסך:

משם נלחץ על Launch Instance בחלק העליון של המסך :

יש לבחור את הtab של Community AMIs:

אפשר ורצוי לבצע חיפוש ולסנן רק את הimages הרצויים.
במקרה זה נחפש שמכילים את המחרוזת "oracle database”. המסך יחזיר את כל AMI's של Oracle Database שקיימים במאגר.
כאן זה המקום להסביר בקצרה מה זה AMI. ובכן, AMI זה קיצורAmazon Machine Image  ומהווה יחידת עבודה בסיסית בסביבת AWS.הAMI הינו תבנית בסיסית של מכונה וירטואלית בסביבת AWS.
אונ נבחר את סוג הdatabase שברצוננו להקים ונלחץ select. במקרה זה בחרתי ב-oracle Database 11.2.0.1 32-bit EE

נלחץ על "Continue”.

במסך הבא ניתן לקבוע כמה פרמטרים של המכונה הוירטואלית, למשל שם.

נלחץ על "Continue”. במסך הבא נקבל RDA keys אשר ישמשו להתקשרות מרחוק עם המכונה הוירטואלית החדשה:

נלחץ על "Create &Download your Key Pair”.

כמובן שחובה להוריד את הkey pair ולשמור אותו.מספיק לשמור את הkey pair רק בפעם הראשונה שמקימים מכונה וירטואלית. אח"כ אפשר להשתמש בו למכונות נוספות. כמובן שחייבים לזכור היכן שמרנו את הקובץ.

נלחץ על ה"Continue” ונגיע למסך הsecurity של המכונה הוירטואלית החדשה:

נלחץ על "Continue” ונגיע למסך האחרון, של Review Details:

במסך זה אפשר לעבור שוב על כל ההגדרות או ללחוץ על "Launch” ע"מ להעלות את המכונה. נלחץ על "Launch”

נלחץ על "Close” ונחזור ל AWS Management Console:

לצורך התחברות מרחוק יש לבצע 2 צעדים מקדימים . הצעדים הללו יבוצעו ElasticFox . אולם, ע"מ שהElasticFox יוכל להתחבר לחשבון הAWS שלנו, יש לספק לו הגדרות security באופן הבא :

הגדרות בElasticFox:

תחילה יש להפעיל את הElasticFox. בהפעלה ראשונה המסכים ריקים:

ע"מ לאפשר התחברות לAWS Management Console יש ללחוץ על "Credentials”:

ע"מ לקבל את הAWS Access Key וAWS Secret Access Key יש לחזור לחשבון הAWS באופן הבא:

יש ללחוץ על Security Credentials ולבצע Sign-in:


יש להקליד לAccess Credentials:

במסך הזה נראה את הaccess Key ואת הsecret Access Key הנחוצים לצורך ההגדרות ElasticFox.

את ההגדרות יש לבצע באופן הבא :

לאחר הגדרה נכונה של הcredentials, אפשר לראות את ה AWS instances

התחברות מרחוק למכונה הוירטואלית החדשה:

לצורך ההתחברות יש לבצע 3 צעדים :

הגדרת FireWall בElasticFox:

  1. יש ללחוץ על הsecurity Groups.
  2. יש להגדיר חוק חדש בfireWall של המכונה הוירטואלית אשר מאפשר גישת ssh מכל שרת למכונה הוירטואלית. כמובן שהגדרה רחבה כזו מהווה פרצת אבטחה וניתן ,כמובן,להגדיר הגדרות בטוחות יותר. ההגדרה מתבצעת באופן הבא:
  3. הגדרה בFireWall  של צרכן הקצה אשר יאפשר פתיחת פורטים לצורך החברות ssh לשרתים רחוקים. בדרך כלל, יש לפתוח את פורט 22.

בשלב הזה ניתן להתחבר למכונה הוירטואלית החדשה באופן הבא ע"י פק' ssh, תוך שימוש private key שניתן לנו בשלבים הקודמים :

אם רוצים להשתמש בputty, חייבים לבצע שינוי פורמט public key שקיבלנו לפורמט שנתמך ע"י putty , תוך שימוש בputtygen באופן הבא :

התחברות דרך putty תתבצע באופן הבא :

יש לוודא שהprivate key מצביע על קובץ הppk שנבנה לעיל:

במסך הconnection יש לשים את הpublic DNS Name של המכונה :

יש לשים לב לשני דברים :

1)      ההתחברות היא כ-root

2)      אין צורך להקיש סיסמא, כיוון שהזדהינו עם הprivate key.

3)      קיים משתמש בOS בשם oracle אשר הינו Oracle software owner.

לאחר הlogin דרך putty או ssh client אחר, נתבקש לאשר את תנאי הרישיון ואפשר לצאת לדרך. כאמור,התקנה נמצאת תחת משתמש oracle ונתבקש להחליף לו סיסמא.

בכניסה ראשונה לoracle יוצע לנו לבנות database:

בשלב הבא נתבקש להקצות שטח דיסק עבור הDB החדש. יש לנו 2 אפשרויות : להקצות את כל השטח ב"/" או להקצות יח' שטח מסוג EBS volume. כמובן שהbest practice מחייב להקצות שטח נפרד לDATA, אבל לצורך הלימוד נקצה שטח ב"/” ולכן נבחר ב"Use Default”. בהמשך נתבקש לספק עוד כמה פרמטרים לצורך יצירת הDB :

מאחורי הקלעים מורץ dbca בsilent installation.


בסיום ההתקנה יש לשים לב לכמה דברים :

  1. ההתקנה כוללת גם Listener. ע"מ להתחבר מרחוק, יש לפתוח את הport 1521 בElasticFox.
  2. ה-DB מוגדר בarchivelog mode.
  3. בסיום ההגדרה יוגדר גיבוי ע"י Oracle Secure Backup Cloud Module.הרעיון הוא לגבות את הDB ע"ג הSimple Storage Service AWS, הקרוי גם Amazon S3. ניתן למצוא פרטים נוספים כאן.
  4. ההגדרה הראשונה מייצרת גם קובץ bash_profile המכיל את כל ההגדרות הנחוצות כגון : ORACLE_HOME,ORACLE_SID,ORACLE_BASE וכו'
  5. מוגדר DBCONSOLE, אבל חובה לפתוח את פורט 1158 בElasticFox וכן בFireWall המקומי (כמו שפתחנו עבור ssh). כמובן שניתן להתחבר לDBCONSOLE מכל דפדפן:

האתגרים הבאים :

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

  1. הסביבה מאד מהירה להקמה.
  2. מתקבל DB עם פרמטרים מאד בסיסיים. כמובן שאפשר אח"כ לקנפג אותו לפי הצורך. יש לקחת בחשבון את גודל המכונה שאיתה התחלנו.
  3. ע"מ לקצר את המהלך, אפשר לשמור Image של המכונה
  4. לאחר reboot של מכונה וירטואלית מקבלים כתובת חדשה ו-public hostname חדש. מכאן ברור שיש להגדיר מחדש את הlistener

מקורות נוספים :

המילון השלם לשרותי הענן של אמזון

ויקיפדיה – מחשוב_ענן

http://www.toadworld.com/Portals/0/GuyH/Articles/Getting_Started_with_Oracle_on_AWS.pdf

נתראה ברשומה הבאה!

רודי שוורץ, Oracle DBA בעל ותק של מעל  10 ש'. עוסק בעיקר בתחום התשתיתי.
ניתן להשיג את רודי באי-מייל : rudi.schwartz@gmail.com


The following two tabs change content below.

רודי שוורץ

תגובה אחת ל- “צעדים ראשונים בעולם מחשוב הענן עם Oracle 11gR2 & AWS”

commenter

Hi Rudi,
thanks for the awesome article! one of the best that I read in recent months…
🙂
Ofir

השאר תגובה:

שם (חובה):
אימייל (לא יפורסם) (חובה):
תגובה (חובה):

*



מאמרים קשורים

MySQL

MySQL For Oracle DBA’s – בסיסי נתונים, טבלאות ומשתמשים

תודה שחזרתם, אחרי שראינו שבוע שעבר איך מתקינים את MySQL הגיע הזמן להבין קצת יותר, אז בואו נתחיל … Databases MySQL תומך בעד 32,000 בסיסי נתונים ב-Instance. כ-Oracle DBA אני משווה MySQL Database ל-Oracle Schema שכן הוא מחזיק [...]
MySQL

MySQL for Oracle DBA’s – התקנה וחיות אחרות

אני עוד זוכר שהתקנה של אורקל הייתה לוקחת יום ואפילו יומיים שלמים, גם היום להתקין אורקל יכול להיות משימה לא פשוטה במידה ומדובר ב-RAC ואו אנשי ה-SYSTEM לא סיפקו לנו סביבת Linux נאותה שיש בה את כל Packages [...]
MySQL

MySQL for Oracle DBA’s – ארכיטקטורה ומנועים

לאחר שהכרנו את ההיסטוריה של MySQL הגיע הזמן להכיר קצת יותר לעומק את הארכיטקטורה ואפילו להשוות אותה לזו של Oralce. ארכיטקטורה כ-DBA-ים מנוסים בטח תשימו לב שבדיוק כמו ל-Oracle ל-MySQL יש Optimizer שתפקידו לקבוע את [...]
MySQL

MySQL for Oracle DBA's – מבוא

פני מספר שנים רכשה אורקל את חברת SUN, רכישה זו כללה את בסיס הנתונים ה-OpenSource המוביל של אותם זמנים – MySQL. רבים שאלו אותי מה לדעתי יקרה עם MySQL האם הוא יטמע בתוך Oracle, האם אורקל  תחליט להרוג אותו או [...]
Copyright 2019 ilDBA Portal. Brought to you by Brillix - Israel Leading DBA company. Sponsored by: DBSnaps - Database Video Tutorialss
Website Security Test
%d בלוגרים אהבו את זה: