הודעות מתויג: עובד

רשת המחשוב במשרד באמצעות סביבות וירטואליות - חלק 3

על ידי , יום שישי 4 דצמבר 2009 23:37

הקדמה

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

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

הגדרת העובד שלך - או שרת ביזקיט

השלב הבא בתהליך הוא להגדיר עובדים הווירטואלי שלך. בשביל זה אני הולך להשתמש ההתקנה של CentOS באמצעות VirtualBox. אני הולך להתקין mySQL ו PHP על השרת, המכונה גם צליעה (Nux לי, מ 'ySQL, P-HP) Server (אולי עשו את זה שם למעלה).

  • התקנת VirtualBox על המחשב שלך Windows (בעקבות הקישור)
  • הורד והתקן את CentOS (הגרסה הנוכחית 5.3) בתוך מכונה וירטואלית שנוצרה

אין טעם לי ללכת זה יש ככל הנראה של "1000 של הדרכות גדולים בחוץ (אוקיי, הנה אחד: יצירה Managing מכונת CentOS וירטואלי תחת VirtualBox ). נקודה חשובה לציין אני מניח כי קראתי מכונה וירטואלית שלי GridMachine.

עד כמה הבחירות שלי של הלקוח וירטואליזציה ומערכת ההפעלה ללכת אין סיבה משכנעת גדול עבור כל בחירה. VirtualBox היא משהו אני משתמש במחשב ביתי והוא נתמך על ידי שלושת מערכות ההפעלה הגדולות. בחרתי כמו CentOS מערכת ההפעלה שלו יציבה טובה אני משתמש בו בשרת האינטרנט שלי. אני מאמין גדול את הכלים הנכונים עבור העבודה (אם כי אני החלת "להשתמש המהירה והקלה ביותר עבורך" המנטליות כאן), כך שאם X מערכת ההפעלה מפעילה את הקוד שלך מהר יותר וביעילות רבה יותר להשתמש במקום :)

חשוב לוודא כי VM שלך משתמש ב-DHCP, אחרת עבור כל מכונה וירטואלית חדשה היה צריך להיות מוגדר בנפרד וזה משהו שאנחנו לא want.By באמצעות DHCP לא צריך להגדיר את הגדרות הרשת באופן אישי למכונות העובד, DHCP ימסור את כתובות IP בשבילך. לכן אתה יכול להעתיק מכונה וירטואלית שלך אודות משרד בלי לדאוג הגדרת כל אחד למעלה (זה משפר את יכולת הרחבה ומפחית הממשל עובד).

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

כיצד להפעיל משרות על העובד

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

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

ההחלטה שלי היתה ללכת עם cron שמתחיל תסריט מעטפת כל minutes. 10 סקריפט מעטפת שלי מבצע את המשימות הבאות:

  1. קבל רשימה תהליך grep הזה "PHP". אם לא נמצא אז להמשיך.
  2. לקרוא קוד העבודה שלך, במקרה שלי זה יהיה משהו מבוסס PHP
  3. התסריט עובד משלים להפעיל שלה
  4. מוכן ללכת שוב על השיחה המתאים הבא

סקריפט bash שלי נראה משהו כזה:

  #! / Bin / sh
 אם ps ax | grep-v grep | grep php> / dev / null
 אז
     הד "עבודה בימים אלו עיבוד, יציאה"
 אחר
     הד "איוב אינו פועל, להתחיל עכשיו"
     PHP yourJobProcessingScript.php
 Fi 

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

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

התקנת Windows כדי לאתחל את העובדים

המשימה הראשונה היא להבין את הפקודה להפעלת מכונה וירטואלית משורת הפקודה של Windows. אם התקנת VirtualBox במיקום ברירת המחדל ואתה שם העובד GridMachine שלך אז הפקודה הנדרשת כדי לטעון את העובד שלך הוא:

  "C: \ Program Files \ יום ראשון \ VirtualBox \ VBoxManage.exe" startvm GridMachine 

עם זאת כדי להריץ את הסקריפט בתוך מדינה "בלי ראש" אנחנו צריכים להשתמש:

  "C: \ Program Files \ יום ראשון \ VirtualBox \ VBoxHeadless.exe", startvm GridMachine - vrdp = off 

פעולה זו תפעיל את המחשב הווירטואלי מבלי GUI ולאפשר לו להציל את המדינה בכבוד. הטיעון השני מכבה RDP ולכן אינו מתנגש עם Windows RDP, או לתת לך הודעה על מאזין ביציאה 3389. שם מחשב וירטואלי הוא תלוי רישיות!

בשלב הבא, אנחנו צריכים להגדיר את Windows לבעוט את VM עובד שלנו ברגע שהמכונה לא היה פעיל. כדי לעשות זאת (ב-Windows XP) תצטרך ללכת התחל -> כל התוכניות -> עזרים -> כלי מערכת -> משימות מתוזמנות להלן:

משימות מתוזמנות

לחץ על הבא על "הוסף משימה מתוזמנת" ואחריו לגלוש להוסיף תוכנית מותאמת אישית. נווט התסריט VBoxManage שלך ​​ולחץ על אישור. לתזמן את המשימה על כל האופציות (נשנה את זה רגע) ולהמשיך. לאחר דילוג על המסך הבא Windows ישאל אותך מי אתה רוצה לנהל את המשימה, הייתי מציע גם "מנהל" או יצירת משתמש חסוי חדש. זכור שאנחנו לא רוצים להתערב בחשבון צוות רגיל במחשב בכל רגע. לחץ על הבא ולבדוק אפשרויות להראות מתקדמים עבור משימה זו.

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

לבסוף untick אפשרות הקובע להפסיק את המשימה אם הוא כבר פועל כמות X של זמן, אבל אין סמן את האפשרות להפסיק את המשימה אם המכשיר כבר אינו פעיל.

לוח זמנים

זהו זה עבור ההתקנה של Windows המארח!

תקציר

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

בפעם הבאה

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

רשת המחשוב במשרד באמצעות סביבות וירטואליות - חלק 5

על ידי , יום שישי 4 דצמבר 2009 11:03

הקדמה

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

ב חלק 4 הסתכלנו שימוש בכלים על מנת להבטיח שאנחנו מריץ את הגירסה האחרונה של מקורות קוד ונתונים, כך התוצאות המתקבלות הן תמיד up-to-date עם המידע העסקי העדכני ביותר ואת ההיגיון.

לפני פריסה

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

  • כמה שיאים אפשר לעבד כיום? ביום? לשעה?
  • כמה זמן בדרך כלל לוקח להסתובב עבודה?
  • כמה קיבולת יותר יש לך?

יש גם שאלות נוספות:

  • אם שרת העיבוד שלך (או אחד השרתים העיבוד) יורדת איך זה ישפיע על היכולות שלך, אתה תהיה נכה?
  • אילו יתרונות אתה מקווה / מצפה לקבל ממערכת הרשת?
  • מכונות משרדיות שלך מסוגל להריץ את העבודות?
  • האם שלך (או עבודות ניתן להמיר) כדי wrok בסגנון הזה של ריצה?

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

פריסה

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

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

לאחר שהמערכת כבר התיישבו עם כמה מכונות (נניח 10% מכלל מכונות משרדיות, כלומר 5) לשמור על רשת ניטור התנועה המחשב המארח performance. benchmark הבא שוב, כעת אתה אמור להיות עיבוד מקומות עבודה 33% יותר מאשר מבחני ביצועים הראשונים שלך. יש לבדוק את זה כך, או שאתה לפחות האצטדיון הזה. אם לא, לבדוק מה קורה לפני שעבר. חזור על מחזור עד בשמחה יש כל מכונות משרדיות פועל בלי להרוג את ביצועי המכונה אדם או שחיקה הרשת כדי קיפאון.

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

עצור!

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

הפגנה מערכת

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

מערכת ההדגמה שלי היה צנוע מאוד. השתמשתי שולחן העבודה הרגיל שלי להגדיר כשרת השליטה העבודה. על זה אני התקין mySQL מותקן שרת להגדיר בתור אמן בשכפול, PHP , A ו-SVN מקושר דרך Apache (גישה דרך VM עובד).

אז יצר מכונת CentOS על VirtualBox עובד על מחשב נייד בן 6 של Windows XP. אני להגדיר משימות מתוזמנות כאמור לאחר העתקת VM על המחשב ולתת לו ללכת.

מכונה וירטואלית הוקמה עם PHP, חתרנות, ו-MySQL. בדקתי את ענף בשם "העובד מהעבודה שלי מאגר השליטה שרתי ודאג שזה יכול להתעדכן באמצעות" svn עדכון ". הבא לי את תוכנית ההתקנה MySQL בתור עבד ובדק את הנתונים שכפול מ-MySQL בשרת הבקרה עבודה עד VM עובד. אחרי כל זה אני ההתקנה סקריפט bash לבין עבודה cron.

עיבוד התסריט שלי בעצם הלכה בנוסח זה (דברים פשוט מאוד):

  • קרא בשדה שם
  • מנה את מספר שמות דומים בטבלה ממקור נתונים שנערך ב VM
  • מנה את מספר שמות כמו שם לעיל, אך פיצול ידי רווחים (כלומר שם פרטי, המזרח, שם משפחה)
  • תהליך זה חזר על 1,000 פעמים

כל עבודה לקח כ 20 דקות לרוץ. בשלב מסוים פתחתי כמה עותקים של VM עובד על מחשב נייד Windows וצפה את העבודות יש לבדוק את כל אחד את כתובות ה-IP העובד. בשלב זה אני גם אישר כי שכפול אוטומטית מחדש.

השארת המחשב הנייד להתבטל הביא עובד החל לעבד עבודות משרת את השליטה העבודה. בעת חידוש השימוש הנייד היה עיכוב של כ 30-60 שניות, זה לא מעט זמן הצוות היו צריכים להיות מודעים כי המחשב שלו רשאי להשהות לזמן קצר בעת החזרת המכונה. מכונות חדשות יותר לא יכול להיות הפסקה של כל כך הרבה זמן. היתרון של כמות עיבוד על ידי מכונות אלה בתקופות סרק יותר כי היו עולים על אנשי הצוות יצטרכו להמתין פרק זמן קצר (נניח, 1 דקה) עם הגעתו של המכונות שלהם בבוקר (לעתים קרובות אני מחכה כבר שזה עבור Windows Defender לעדכן להתקיים) בתנאי שהם היו מודעים לכך (זמן שימושי לתפוס קפה בבוקר!).

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

מסקנות / הערכה

הצעד הברור הבא יהיה ממש מקבל דוגמה העולם האמיתי ולהתחיל לפרוס מערכת כזאת בתוך הסביבה במשרד ולראות מה קורה. מבוקש העסק להתחייב זה ללא חברת שובל בוער להוכיח את הטכנולוגיה והיעילות עלול להיות קצת קשה. גריד / מחשוב מבוזר מאוד פופולרי הוא כמה עיגולים ויש כמה יישומים גדולים (BIONC, SETI @ Home, Folding @ home, וכו '). לא, עם זאת, בקנה מידה קטן יותר למצוא מערכת פשוטה כמו זו בחיפושים שלי זה יכול להיות מגולגל בתוך הסביבה במשרד.

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

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

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

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













פנורמה נושאים על ידי Themocracy

9 מבקרים מקוון עכשיו
8 אורחים, 1 בוטים, 0 משתמשים
מקס מבקרים היום: 14 ב 08:21 בבוקר UTC
החודש: 56 25-04-2012 בשעה 08:41 בבוקר UTC
השנה: 69 ב 27-02-2012 9:56 בבוקר UTC
כל הזמן: 130 ב 28-03-2011 10:40 UTC