‏הצגת רשומות עם תוויות Cloud Solutions. הצג את כל הרשומות
‏הצגת רשומות עם תוויות Cloud Solutions. הצג את כל הרשומות

יום שבת, 22 בפברואר 2014

SmoothWall Router Guide




זהו, הגעתי למאמר האחרון בסדרה של Cloud Solutions, בסדרה הדגמתי כיצד לבנות ענן בעזרת מערכות Open Source בלבד שנותנות מענה בכל שכבה ,משלב האחסון, הוירטואליזציה ואיזון עומסים, השלב האחרון הוא התקשורת עם העולם החיצון ואבטחת המידע, קיימות המון מערכות הפעלה לניהול ראוטרים עם Firewall מבוססות Linux שמאפשרות לשמור על הסביבה מסכנות מבחוץ.

Setup

שלב ההתקנה שכרגיל חוזר על עצמו נוריד את ה ISO מהאתר, נצרוב ונתחיל לרוץ...

חלון פתיחה מרשים

יצירת הדיסק 

העתקת הקבצים



אפשרות לעשות שחזור של המערכת עם הגדרות ישנות



Network Settings

ניתן שם למכונה ואח"כ נבחר את סוג הפוליסה, יש 3 תבניות מוכנות מראש:
  • Open - כל הבקשות החוצה יוצאות ללא הפרעות.
  • Half-Open - חלק מהבקשות יוצאות החוצה, בקשות מסוכנות נופלות.
  • Closed - אף בקשה לא יוצאת החוצה ויש לפתוח ידנית.

שם למכונה

סוג הפוליסה

לאחר מכן נפתח תפריט שמגדירים בו את התקשורת, תחילה נבחר ב Network Configuration Type שמאפשר לבחור את התצורה של המערכת, הדגש במקרה הזה הוא כמובן על כמות הממשקים (Interfaces) הפיזיים שיש במכונה למשל נוכל להוסיף Wifi כ Access Point או DMZ.

תמיד ניתן להיכנס בעזרת הפקודה setup ב Console
לצורך הדוגמה יש במכונה 2 כרטיסי רשת שמדמים 2 כניסות, אחת עבור ה WAN והשניה עבור ה LAN, החלוקה לפי צבעים כפי שנראה בהמשך.



בסיום נחזור לתפריט הראשי ונבחר באפשרות Card Assignments, נגדיר את החיבור בין ה Interface לכרטיסי רשת.


כפי שניתן לראות קיימים 2 ממשקים שמחולקים לצבעים:

  • Green - הממשק של ה Deep Web מאחורי Smooth Wall.
  • Red - הממשק החיצוני, לצורך הדוגמה הוא מתחבר לנתב אחר ויוצא ממנו לאינטרנט.


חלוקה לצבעים דרך נוחה לזכור...
נחזור פעם נוספת לתפריט ונבחר באפשרות Address Settings, נגדיר את הכתובת של ה Default Gateway עבור הממשק הירוק.




לאחר מכן נגדיר את ממשק האדום שזו הרגל שמתחברת ל Router חיצוני, ניתן להגדיר אותה כ Static או לקבל כתובת ישירות מהספק או מ DHCP.



שימו לב! - במקרה שבחרנו להשתמש בכתובת סטטית יש להגדיר Dns / Gateway.

בסיום נפתח התפריט המרכזי שדרכו מנהלים את ה Router רוב האפשרויות ניתנות לשינוי בסביבת ה Web, הדבר האחרון שנשאר הוא לתת סיסמאת ניהול ולהיכנס לממשק בדפדפן.



Web Interface
ניכנס לכתובת של ה Default Gateway בפורט 81 לממשק ניהול.

קצת יותר נוח


לצורך הדוגמה הפעלתי שרת Fedora עם Apache והגדרתי כתובת סטטית (10.10.10.5) עם Default Gateway לממשק הירוק (10.10.10.254).



נחזור לממשק ה Web ונלחץ על Networking - Incoming ונגדיר את השירות שברצוננו לחשוף:



על מנת להגדיר את החוק יש לבחור בכתובת החיצונית שהולכת להתחבר לשרת הפנימי במקרה שלי בחרתי לפתוח את השרות עבור כל Class C אבל ניתן להגדיר כתובת ספציפית , בתגית outgoing ניתן לקבוע את החוקים מה Deep Web החוצה.



 שימו לב!

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


סיכום

SmoothWall זה לא ה Firewall הכי מתקדם אבל הוא עושה את העבודה, הוא מגיע בגרסה 64\x86 כך שניתן להתקין אותו על כל מחשב שאין בו שימוש ולהפוך אותו ל Router עצבני, הוא מכיל בתוכו אפשרויות נוספות כמו VPN ו IPS אבל את זה אני משאיר לכם, אפשר לומר שהשלמנו את החוליה האחרונה בענן ולא שלמנו שקל על אף רישיון והכל בזכות Linux ו Open Source.

מבנה הענן הסופי



מי רצה ענן ולא קיבל?

יום שבת, 28 בדצמבר 2013

Zen Load Balancer Guide




לאחר שבנינו סביבה וירטואלית בעזרת Proxmox וחברנו מערכת אחסון בעזרת FreeNas השלב הבא מתמקד במשאבי הרשת בענן, על מנת שנוכל לתת שירות לכמות משתמשים ששרת בודד אינו יכול לתת, עלינו לחבר רכיב נוסף בענן שינתב את הבקשות בין מספר שרתים, הרכיב נקרא Load Balancer בחלק מהמקרים הוא מגיע עם מערכות FireWall מתקדמות אבל לרוב זאת יחידה נפרדת שמתחברת ל Router וממנו לעולם.

Load Balance


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

 Zen Load Balancer

כמו שראינו בשאר המאמרים בנושא גם פה נעשה שימוש ב Linux, מדובר על פרויקט חינמי שבנוי על מודל עסקי דומה כמו של Proxmox ו FreeNAS שהתשלום עבור תמיכה בלבד, כך שניתן להוריד ולהשתמש בו בחינם, בנוסף ניתן לקנות באתר הרשמי חומרה יעודית.

דרישות:
  • 2 מכונות Linux וירטואליות עם Apache.
  • Zen Load Balancer - האתר הרשמי
תהליך ההתקנה מאוד פשוט מכניסים את הדיסק ומתחילים לרוץ.

דומה לצורת ההתקנה של Proxmox ו FreeNAS

תפריט מסודר
טעינה ראשונית לזיכרון
בחירת כתובת סטטית
בחירת Netmask
בחירת Default Gateway
הגדרת סיסמא ל Root
הגדרות הכנון הקשיח
כתיבה לכונן הקשיח והפעלה מחדש

בסיום ההתקנה נפעיל את המכונה מחדש נפתח את הדפדפן בכתובת שהכנסנו בהתקנה ובפורט 444 שיכניס אותנו לממשק ניהול, עם הכניסה נבקש להכניס שם משתמש וסיסמא זמניים (admin , admin) ואח"כ נעבור לממשק, זהו סיימנו את ההתקנה בהצלחה.

בניתי 2 מכונות נוספות מבוססות על Fedora יחד עם Apache בכל יחד יש קובץ Index.htm שמתאר את השרת.



תחילה נבנה Farm (חווה) , נלחץ על Manage-> Farms, נבסס את ה Balancer על כתובת הראשית (192.168.1.10), נגדיר את הפרוטוקול ואת הפורטים שאותם נפצל לצורך הדוגמה מדובר בחווה של שרתי HTTP, אם לא בא לנו להשתמש בכתובת הראשית ניתן להוסיף Interfaces נוספים.


בהגדרות החווה נקבע את אופי ההתנהגות של ה Load Balancer ונחבר אליו את השרתים האמיתיים שנותנים את השירות:



הפונקציה החשובה ביותר היא בחירת האלגוריתם המתאים לפיצול העומסים, Zen Load Balancer תומך במספר אלגוריתמים כפי שנראה בתמונה:


  • Round Robin - פיצול שווה בין השרתים האמיתיים.
  • Hash Sticky Client - כל כתובת שמגיעה ל Balancer מקבלת מחרוזת ייחודית שמחברת אותה לשרת האמיתי כלומר התעבורה תמיד תעבור דרך אותו שרת.
  • Weight - חלוקה של ביצועים לפי השרתים האמיתיים כלומר השרת עם ה Weight הגבוה ביותר יקבל יותר תעבורה משרת עם Weight נמוך יותר, התעבורה תתחלק באופן יחסי לפי ה Weight.
  • Priority - השרת עם התעדוף הגבוה ביותר יקבל את התעבורה.

החווה שלנו דורשת עקביות בחיבור, במיוחד בשרותי Web שבהם יש Session שנוצר על המכונה האמיתית, נניח שיש לנו אתר עם חשבון אישי שהמידע נשמר ב Session, ברגע שהלקוח מתחבר לאתר נרצה שתמיד יגיע לאותו שרת על מנת לשמר את ה Session, לכן ה Load Balancer מכיל טבלה בה כתוב לאיזה שרת אמיתי כל כתובת התחברה ופעם הבאה שתגיע בקשה הוא ידאג להעביר אותה לשרת המקורי.


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

לאחר שסיימנו להגדיר את ההגדרות הכלליות של החווה השלב הבא הוא לשלב את השרתים האמיתיים, נכניס את הכתובות של השרתי Fedora:


זהו אפשר לומר שסיימנו וברגע שתגיע בקשה לכתובת ה Load Balancer הוא יעביר את הבקשה לאחד השרתים לפי האלגוריתם שנבחר.



סיכום:

בסדרת המאמרים בנושא ראינו כיצד לבנות ענן בעזרת תוכנות Open Source בלבד, שמבוססות על Linux והחלק האחרון הוא פתרון Firewall שאותו נכיר בהמשך, האמת שהמאמר הזה הוא סיבה טובה למסיבה, הוא המאמר האחרון לשנה והוא המאמר ה 100  בבלוג אז נתראה בשנה הבאה.

בהצלחה...

יום רביעי, 4 בספטמבר 2013

FreeNAS Guide




בהמשך למאמר MyCloud Guide (עבר קצת זמן...) הקמתי סביבה וירטואלית חינמית בעזרת ProxMox שמבוסס על KVM הפעם אתמקד על שירותי הקבצים בענן בעזרת סביבה חינמית נוספת שנקראת FreeNAS שמבוססת על FreeBSD ומאפשרת להגדיר שטחי אחסון שונים לסביבה הוירטואלית או בכלל לסביבת העבודה.

Network Attach Storage

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



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



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



בסיום טעינת המערכת מקבילים כתובת שדרכה מנהלים את ה Storage מהדפדפן , הממשק מאוד ידידותי וניתן לעשות איתו המון, ניתן להוריד Plugins עבור שירותים מיוחדים כמו BitTorrent , Streaming וכו'.



על מנת לבנות את ה Share הראשון יש להגדיר תחילה Volume עבור הדיסק, לצורך הדוגמה יצרתי דיסק בפורמט של UFS - Unix File System אבל ניתן לבחור פורמטים נוספים כמו NTFS - New Technology Files System שפותחה ע"י Microsoft.



ההרשאות מבוססות על Unix לצורך הדוגמה נתתי הרשאה 777 שמאפשרת קריאה וכתיבה של כל אחד, על מנת לאבטח את המערכת מומלץ ליצור פרופיל של משתמש חדש ולתת את ההרשאות המתאימות.



המערכת יודעת לתת שירותי CIFS - Common Internet File System שמתאימים למערכות Windows אבל גם שירותי NFS - Network File System עבור מערכות Linux שגם נתמכים ע"י Microsoft אבל מצריכים את ההתקנה של Service For Network File System כחלק מה Features שמגיעים עם מערכת ההפעלה, במקרה שלי יצרתי Share חדש מסוג CIFS ונתתי גישה עבור Guest User שזו הרשאה נוספת ברמת הפרוטוקול.



ניתן להוסיף עוד שירותים מגוונים על גבי שטח האחסון כמו FTP, NFS,ISCSI  וכדומה.




זהו ה Share מוכן לעבודה, אין כסף!


סיכום

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

לאתר הרשמי


שנה טובה!

יום רביעי, 19 בדצמבר 2012

MyCloud Guide




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

נושא העננים זה לא משהו חדש , חשבו עליו בשנת 1967, מהנדס מ IBM בשם  Gene Amdahl שפיתח את ארכיטקטורת ה Clustering , אבל מימוש Cluster באותה תקופה לא היה אפשרי לכל אחד, נדרשו משאבים רבים ועלויות כבדות, עכשיו אחרי 45 שנה אוטוטו 46 העולם נראה קצת אחרת הטכנולוגיה התקדמה מאוד והדולר נחלש מה שמאפשר לקנות חומרה טובה במחיר טוב ולנצל אותה במלואה בעזרת תוכנות מתוחכמות ומערכות Storage מתקדמות, בעקבות מהפכת הוירטואליזציה העסק הופך לזול וזמין.

Cluster

פעם כשדיברו על Cluster דיברו על סוג של מחשב על , מחשב שמחוברים אליו אלפי מחשבים שתופסים חדר ענק, אם תרשמו ב Google את המילה Cluster תבינו על מה אני מדבר, זה היה עסק מסורבל ויקר שמעטים מבינים בו אבל לאחר ש Linux נכנסה לשוק רשמית בשנת 1991,העסק התחיל לקבל תפנית והיום יש המון פתרונות מבוססי Linux ובחינם.

אז מה זה Cluster?

Cluster (אשכול) זה מספר מחשבים שנותנים שירותים ומתנהגים לפעמים כמחשב אחד,  החיבור בניהם מתבצע בעזרת רשת פנימית והרעיון שיש מחשב שמוגדר כ Master ושאר המחשבים מחוברים אליו כ Slaves , בעזרת שכבה וירטואלית שעוטפת את המחשבים ניתן לייצר כמות אינסופית של תחנות וירטואליות, כאשר רואים שאחד העבדים מתעייף מעבירים את התחנות הוירטואליות לעבד אחר או שמוסיפים עבד חדש.




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

נראה לי שחפרתי מספיק, קדימה לעבודה, דבר ראשון יש להיכנס לאתר של Proxmox ולהוריד את הגרסה האחרונה של המוצר Proxmox Ve, לצרוב על דיסק ולהכניס למחשב שאותו אנחנו רוצים להפוך ל Master של ה Cluster שלנו.


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

נכון שמדובר ב Master אבל הוא יכול להתנהג כעבד כמו שאר העבדים וניתן להתקין עליו תחנות וירטואליות למרות שזה לא כל כך מומלץ אחרי הכל הוא ה Master והוא המחשב שמתפעל לנו את כל ה Cluster לכן חשוב לשחרר ממנו משימות מיותרות אז כמו שאמרתי הדרך היחידה לעשות זאת היא דרך SSH.

#:pvecm create <cluster name>
מייצר Cluster על המחשב הנוכחי, מאותו רגע המחשב נהפך ל Master.

#:pvecm add <master address>
לאחר שהגדרנו את ה Master נבנה את העבדים, עושים את אותו תהליך ההתקנה כמו שעשינו עם ה Master רק שכאן אנחנו מצרפים את העבד ל Master.


אחרי שהגדרנו את המחשבים הפיזיים בעזרת ה SSH, מרבית העבודה שלנו תתמקד בממשק ה Web הנחמד שעשו לנו, שם נוכל לעקוב אחרי ה Cluster, לייצר מכונות וירטואליות חדשות , ליזום גיבויים, להעביר תחנות מעבד לעבד ע"פ מצב ה Cluster.


לפני שנעבור לשלב ההתקנות של המכונות הוירטואלית נושא אחסון המידע הוא קריטי וחיוני מאוד ל Cluster לכן צריך להתכונן בהתאם, לצורך הדוגמה יש ברשותי HD חיצוני שמכיל בתוכו כרטיס רשת של חברת WD משהו מאוד פשוט אבל מספיק טוב לדוגמה, לא חובה להשתמש ב Storage חיצוני ניתן להשתמש גם בכוננים שבמכונות הפיזיות.




ב Proxmox קיימות המון דרכים לחבר מערכות אחסון ל Cluster , ניתן להשתמש במערכות NFS, או ISCSI , אני אתמקד בהוספת Directory כ Storage בעזרת פרוטוקול CIFS, גם פה הדרך היחידה לבצע זאת היא דרך ה SSH, ניצור תיקייה חדשה בתיקיית ה Mnt ב Master ונעשה Mount.

#:mkdir /mnt/wdmybook
#:/mount //192.168.1.2/share -t cifs /mnt/wdmybook


בממשק ה Web יש ללכת לתגית Storage וללחוץ על Add -> Directory.



נכניס את הנתיב לתיקייה שעשינו Mount ונבחר איזה סוג של Content ה Storage מאחסן (דיסקים וירטואלים, ISO, גיבויים), אפשר לשלב כמה סוגים של Contents.


על מנת לבנות תחנות וירטואליות צריך קבצי ISO של מערכות ההפעלה, יש ללחוץ על המכונה הרצויה וללחוץ על אחד הכוננים, בתגית Content יש אפשרות להעלות את קבצי ISO לשטח האחסון.

יש 2 סוגי חשבונות במערכת, חשבון ה Root מבוסס על חשבון מסוג Linux PAM standard authentication שמנהל את ה Cluster , מוסיף משתמשים ועבדים למערכת, אבל הוא אינו יכול לגשת למכונות הוירטואליות יש לייצר משתמש חדש עם חשבון מסוג Proxmox VE authentication server ולהכניס לו שם משתמש וסיסמא, אפשר להגדיר גם את ההרשאות של המשתמש.

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

בחירת מערכת ההפעלה.



בחירת ה ISO של ההתקנה שמאוחסן בכונן החיצוני


פה הסיפור קצת מעניין לצורך הדוגמה השתמשתי ב Distribution נחמד של Linux בשם SliTaz, בעצם מדובר על מערכת Linux לכל דבר בגודל 35 Mb בלבד וממשק KDE.

נפח כונן הקשיח.




הגדרת זיכרון.



הגדרות רשת.



זהו, מה שנשאר זה להריץ את המכונה ויש לכם Cluster.




סיכום:

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

יש עננים?