DCSIMG
February 2008 - Posts - Gadi's Blog

Gadi's Blog

SBC, Application Delivery, Scripting ושאר ירקות

February 2008 - Posts

מה לאפליקציות וירטואליות ול DRP

מאז ה 11/9/2001 כולם מדברים על DRP, מדברים, דנים, מתכננים תוכניות.
בונים תשתית מחשבים חלופית במקום מרוחק, משתמשים בשלל מוצרים כדי לשמור על עדכניות המידע באתר המרוחק, משתמשים הרבה בוירטואליזציה של שרתים, וירטואליזציה של Storage ובכלל מוצאים מענה לצרכי תוכניות ה DR שלהם בטכנולוגיות השונות של וירטואליזציה.

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

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

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

אוקי, הבנו את הבעיה, עכשיו מה עושים, משתמשים באפליקציות וירטואליות, זה מה.
ואיך אפליקציות וירטואליות יעזרו בעצם, עבודה עם אפליקציות כאלה תהפוך את הצורך בהתקנה של תוכנה שוב פעם ושוב פעם, לחוויה שבעיקר נעלה בשיחות על "וואיי איזה לא מתקדמים הינו פעם", כנ"ל גם לגבי בדיקות תאימות שכל התוכנות באמת מסוגלות לעבוד ביחד על אותה מערכת הפעלה אחת.
למעשה נוכל להגיע לסצנריו שנגדיר פעם אחת איזה אפליקציות מורשה המשתמש לקבל ולא משנה איך הוא יבחר לעבוד (מחשב מקומי/התחברות לשרת טרמינל/VDI) הוא יקבל את אותן האפליקציות שאפשרנו לו לעבוד איתן קודם לכן.
יותר מכך, נוכל אפילו "לייצא" את האפליקציות הרלוונטיות למשתמשים על גבי disk on key או CD וכך הם יוכלו להפעיל אותן מכל מקום שרק ירצו (מחשב באינטרנט קפה או המחשב של השכנים).
סתם לדוגמה, נוכל ליצור אפליקציה עם קטלוג המוצרים המלא של החברה ולספק אותה לאנשי המכירות על גבי disk on key, וכך למזער את הנזק למכירות החברה, איש המכירות ייצטרך רק מחשב להפעיל עליו את האפליקציה והוא מסודר, רק כדי להזכיר לכולם, המצב עכשיו שאם איש מכירות רוצה לבצע את אותו הפעולה הוא צריך להתחבר עם הלפטופ שלו ל vpn של החברה ולמשוך את הקטלוג, או לחילופין להתחבר לשרת טרמינל בתוך החברה.

זה באמת על קצה המזלג (למה לעזאזל יש רק 24 שעות ביממה?!) ואני בטח ארחיב על הכל בהמשך.
ועוד משהו, עם אני לא טועה ב TechEd שבא אלינו לטובה יש הרצאה לאיך לבנות DR Plan עם מוצרי הוירטואליזציה השונים של מיקרוסופט, אם באמת ההרצה הזאת היא לא פרי דמיוני אז אני ממליץ כבר עכשיו.  

נובל רוכשת את PlateSpin

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

למי שלא מכיר את PlateSpin, סקירה קצרה, יש להם שלושה מוצרים:

  • PlateSpin Forge - לגיבוי חם של שרתים.image
    למעשה זה appliance די מגניב שמכיל בתוכו את כל מה שצריך
    כדי לגבות עד כ-25 שרתים פעילים (Storage, תשתית לוירטואליזציה ויכולות ניהול), ככה שבמקרה ואחד
    מהם (או כולם) נפל פיסית, השרת ימשיך לעבוד בתצורה וירטואלית
    מה Forge, דבר אשר ימנע אי זמינות של השירות אותו סיפק השרת.
  • PlateSpin PowerConvert -" אשר מאפשרת מאפשרת הסבה של שרתים פיזיים לוירטואליים תוך כדי עבודה וללא השבתה או הורדה של השירותים בזמן ההסבה,
    למעשה הפתרון מספק אתimage הגמישות לתכנון וייעול מרכז המידע,
    על ידי הזרמת עומס העבודה בין השרתים הפיזיים, שרתי להב, שרתים מארחים וארכיונים. POWERCONVERT הוא הפתרון הראשון והיחיד מסוגו המפריד מרחוק את עומס העבודה משרת נסתר ומזרים אותם לכל שרת מארח- בין אם הוא פיזי או וירטואלי, בעזרת פעולת DRAG וה- DROP
    " וזה ציטוט של ואדים סולובי מ WE!, לא היה לי כוח לכתוב לבד וההסבר של ואדים עושה את העבודה, ככה ששנינו יוצאים נשכרים.  
  • PlateSpin PowerRecon - " מספק רמות חדשות של בינה וניתוח חזותי למיזוג ולאופטימיזציה
    של מרכז הנתונים על ידי איסוף מלאי החומרות, התוכנות והשירותים בעזרת טכנולוגיה שאינהimage
    מערבת כלל מאמץ ידני או גורם מפריע.
    בנוסף, PowerRecon אוסף מרחוק נתונים סטטיסטיים על ניצול
    עומס העבודה, כדי להציג תמונה ברורה ותמציתית על שירותי היישום הפועלים במרכז הנתונים וכיצד נעשה שימוש במשאבים שלהם. המוצר מאפשר לקבוע בקלות את ההתאמה האופטימלית בין ההיצע – משאבי השרתים – לבין הביקוש – עומס העבודה – ומאפשר ליצור באופן אוטומטי תוכניות למיזוג שרתים.
    " ואת זה מצאתי במסמך מרקטינג של כלנית, גם כאן העצלות השתלטה עלי.

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

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

עוד קצת פרטים

                       image

VDI, Application Virtualization and Microsoft

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

בפוסט הראשון שלו בחר יוסי להתמקד במיינפרמיזציה של חלונות או בעצם לא רק של חלונות אלה זאת כל סביבת העבודה שהמשתמשים היו רגילים אליה עוברת לה שינוי, סוג של חזרה לעבר, לתקופת המיינפריים.
זה נכון שבזמן האחרון רואים יותר ויותר פעילות בשוק ה SBC (או מחשוב מבוסס שרת), מיקרוסופט שיפרה מאוד את ה Terminal Server ב Windows Server 2008, סיטריקס ממשיכה להוציא מוצרים לא רעים בכלל,ל Provision (שבנתיים נרכשה ע"י Quest) יש מוצר מגניב לגמרי לשוק ה SBC וגם ג'טרו הישראלית מנסה להישאר בתמונה של הגדולות.
אבל עדיין, אני חושב שהמגמה היא לווא דווקא SBC, המגמה כרגע היא על לספק את האפליקציה למשתמש, או למעשה, למשתמש לא אמור להיות אכפת איך הוא מקבל את האפליקציה, האם היא מותקנת אצלו מקומית, האם הוא מפעיל אותה משרת TS, האם זאת אפליקציה וירטואלית שרצה על המחשב שלו או שאולי האפליקציה רצה בכלל על שרת כלשהו באינטרנט (SaaS).

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

עכשיו הקטע פה (ויסלחו לי האנשים הטובים ממיקרוסופט) שמיקרוסופט ממש לא מחדשים או מובילים את המהלך (ונראה לי שיוסי טוען דווקא שכן), לא מעט מרגישים שהם אפילו מנסים לעצור אותו.
אתם בטח שואלים את עצמכם למה אני חושב ככה, הרי מיקרוסופט היא חברה נהדרת שתמיד נמצאת בקו הראשון של כל הטכנולוגיות ומנסה לעזור כמה שהיא רק יכולה, נכון, בלא מעט מקרים זה באמת המצב, אבל אם נגע לשניה בתחום ה VDI, מישהו יכול להסביר לי למה לפי הרשיון של Windows Vista אסור לי להריץ אותו במכונה וירטואלית לצורך שימוש ב VDI אלה אם כן רכשתי רשיון VECD (עניין של משהו בסביבות ה 20$ אם הקליינט ניגש ממכונה עם Windows ו- 110$ אם הקליינט ניגש מ Thin client, וזה כמובן בנוסף למחיר הרשיון של Windows Vista), אני בכלל לא מדבר על זה שכרגע למיקרוספוט אין בכלל מוצר VDI (ל Citrix, VMware, Provision דווקא יש).

בתחום ה Application Virtualization המצב קצת יותר טוב את האמת, אבל... מוצר ה Application Virtualization של מיקרוסופט בכלל נרכש מ Softricity לפני משהו כמו שנה וחצי (אותו המהלך עשו גם Symantec שרכשו את Altiris וגם VMware שרכשו את Thinstall)  ואי אפשר להגיד שהוא המוצר הכי טוב מבין המוצרים הקיימים כיום, אבל עדיין, זה לא מפריע למיקרוסופט לדחוף אותו במחירים מגוחים לגמרי יחסית למתחרים.
בגדול זה לגיטימי לגמרי לדחוף את המוצר שלך בכל הכוח, אבל העניין הוא שהדחיפה העצבנית הזאת לא עוזרת יותר מדי לטכנולוגיה להצליח, יחידות ה IT שכבר הלכו לכיוון של אפליקציות וירטואליות עם Softgrid (לא מעט בגלל המחיר יחסית לאחרים) ובגדול לא קיבלו מוצר איכותי כ"כ (יחסית למתחרים) יחשבו הרבה יותר טוב האם להכניס מוצר וירטואליזציה אחר, אני מקווה ודי בטוח את האמת ש Softgrid 4.5 (או בשמו החדש Microsoft Application Virtualization) שאמור לצאת בסביבות סוף ספטמבר יהיה מוצר הרבה יותר טוב, אז יכול להיות שדעותי תשתנה אז (אני מאוד מקווה).

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

הכל עניין של פרופורציה

מצאתי את הקטע בבלוג של צביקה רול, מעורר מחשבה.

EMC? SAP? ביחד?!?!

בזמן האחרון יש כל מיני שמועות על שיתוף פעולה אפשרי בין EMC ו- SAP.
שיתוף הפעולה מדבר על פתרון לאספקת מערכת ה ERP הכ"כ נפוצה גם ללקוחות קטנים ובינוניים שידם אינם משגת מערכת שכזאת in house (עלות הטמעה שכזאת יכולה להגיע בקלות לכמה מיליוני מצלצלים ואני בכלל לא מדבר על זה שלא כל ההטעמות עוברות בשלום), כלומר עפ"י השמועות הפתרון שנרקם הוא לספק מערכת SAP על גבי האינטרנט לפי תשלום חודשים קבוע ואותו מערך של SAP ייעבוד על תשתיות של EMC.

הקונספט (שנקרא ד"א Software as a Service או cloud computing) הוא לא ממש חדשני, google וחברות אחרות מציעות כבר זמן מה אפליקציות לעבודה דרך האינטרנט ללא צורך בהתקנה (google docs למשל), אבל יש הבדל גדול מאוד בין תואם office לבין תוכנת ERP.
ה ERP הארגוני הוא אולי אחת המערכות החשובות ביותר באירגון, נשמרים בה הנתונים הכי קריטיים של החברה וכל נפילה של המערכת מעוררת גל של עובדים שמתחילים להתרוצץ בחוסר מעש במסדרונות, ככה שאני לא בטוח עד כמה חברות ינהרו לעבר סוג פתרון שה ERP שלהם יושב אי שם באיזשהי חוות שרתים מרוחקת ולא ברור מה קורה עם המידע שלהם (מי רואה?, האם הכל מגובה?, מה קורה במקרה של כשל?), נכון, יש ל EMC טכנולוגיות בדיוק למטרה הזאת (Fortress לאספקה של אפליקציות קריטיות דרך האינטרט) ואפילו משהו כמו לפני חודש הם השיקו את השירות הראשון שעובד עם הטכנולוגיה הנ"ל
(MozyEnterprise לגיבוי אוטומטי של הנתונים החיוניים של החברה לאתר מרוחק), אבל עדיין אני לא מאמין שחברות שיכולות להרשות לעצמן להחזיק את ה ERP מקומית יבחרו ללכת בפתרון שנרקם לו לאיטו, אבל הייי, נראה שאלה בכלל לא הלקוחות הייעודיים, הלקוחות שאליהם SAP ו EMC ומכוונת הם חברות קטנות וסטרטאפים (שמאוד אוהבים להטמיע כל דבר חדש) וכאלה .

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

סרטונים טכניים על Citrix XenApp

לא מזמן Citrix העלו תשעה סרטונים טכניים על Citrix XenApp (ולמי שלא מעודכן, זה השם החדש של Citrix Presentation Server).

הסרטונים הועברו ע"י בריאן מיידן ( Terminal Server MVP, סוג של אושיה בעולם ה SBC) וגייב קנוצ' (שעובד יחד עם בריאן ומוכר בתחום בזכות עצמו) ועוסקים בתחומים הבאים:

  • סביבת משתמש - פרופילים ו group policy
  • ייעול ביצועיי מעבד וזכרון על שרתי Citrix XenApp
  • ייעול הדפסות על גבי Citrix XenApp
  • הגדרת policies
  • תכנון חוות Citrix XenApp
  • הסבר על טכנולוגיית SpeedScreen
  • יסודות הארכטיקטורה של Citrix XenApp
  • הסבר על נושא הרישוי (Citrix XenApp ו Microsoft TS)
  • איך לעשות מיגרציה של שרתי TS לתוך חוות Citrix XenApp

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

אחרי ששנים כולנו התרגלנו ל webcasts מבית מיקרוסופט כמעט על כל מוצר שקיים, יפה לראות את Citrix עושים צעד כזה, המוצר (XenApp) איננו מוצר פשוט והטכנולוגיות שמשולבות בו אינן טריוויאליות (כי אחרת ל Citrix לא היתה הצדקה לדרוש סכומים כאלה גדולים על רשיונות), אני בטוח שאם הם ימשיכו ויצרו סרטונים נוספים (גם על מוצרים אחרים, ועכשיו יש לא מעט כאלה) זה יגרום ליותר ויותר אנשים להבין את המוצר טוב יותר וכך אולי להעריך אותו על פני אחרים (מי אמר Provision?? ומי פה התלחשש על Terminal Server??)

Citrix XenApp - Technical Videos

קצת כבוד לחברה ישראלית בתחום ה SBC

אני נוהג להתעדכן לפעמים במה קורה בחברת Chip PC מכיוון שזו היא חברה ישראלית אשר פועלת בתחום ה SBC בכל העולם (מייצרת Thin Clients) ולעיתים אפילו רושמת הצלחות לא מבוטלות.

אתמול נכנסתי כמנהגי פעם בכמה חודשים כדי לקרוא את ה Press Releases האחרונים ולשמחתי ראיתי חדשות טובות, (להם, לי אין שום קשר אליהם, למרות שאני לא אתנגד לקבל אחוזים מהמכירות) כתוצאה מהגדלת הפעילות באירופה (ובעיקר בארצות השפלה) ולא מעט עקב ההצלחה האחרונה שלהם החברה' ב Chip PC החליטו להתרחב ולפתוח נציגות בהולנד (לפי הנבתי עד עכשיו היו נציגויות בארה"ב, אנגליה וגרמניה), הסניף ימוקם בהוגלנד (Hoogland) אשר נמצא כ 60 ק"מ מאמסטרדם (ד"א לפי ויקיפדיה, הוגלנד היא עירה בעלת כ 15000 תושבים, מה שנקרא עיירה ציורית).

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

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

סתם, המון הצלחה!

ההודעה המדוברת לעיתונות

MRTG graphs עבור חוות Citrix Presentation Server

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

ניטור השימוש של סביבות Citrix Presentation Server (שד"א עם כל ריבוי המוצרים של Citrix בזמן האחרון כבר נהיה קשה להתייחס לחוות Citrix PS כסתם חוות Citrix כמו שהינו רגילים עד עכשיו) הוא אולי אחד הנושאים המרכזיים שיש לתת עליהם את הדעת כאשר מתכננים סביבה שכזאת.
ניטור השימוש חשוב כדי להבין האם מספר השרתים בחווה מספיק לכל המשתמשים, האם מספר הרישיונות הזמינים למשתמשים באמת מספיק לכולם או אולי להבין את דפוסי העבודה של החווה (יותר כניסות בלילה מאשר ביום וכו'), עוד נקודה לקחת בחשבון, היא שמנהלים אוהבים נתונים סטטיסטיים ואפילו מפתחים חיבה קשה לגרפים, והדרך הקלה ביותר לשכנע אותם שצריכים להוסיף עוד שרתים/רישיונות לחווה היא באמצעות נתונים סטטיסטיים שמחזקים את הטענות שלנו (שלהם נראות תמוהות לגמרי).

כדי ליצור את הגרפים האלה יש צורך לאסוף נתונים רלוונטיים מהחווה ופה מי שלא נפל בחלקו להיות בעליו הגאה של רישיון Enterprise או Platinum ייתקל בבעיה, רישיון ה Advance לא נותן שום יכולות לאסיפת נתונים סטטיסטיים על השימוש בחווה.
אם אתם בעניין של לאסוף מידע על כמות הרישיונות בשימוש, לא ממש משנה איזה סוג רישיון רכשתם, האופציה היחידה לקבל נתונים סטטיסטיים היא ע"י יצירת הדוחות ב License Management Console של ה Licenses Server, אני מדבר על נתונים היסטוריים, כי לא קיימת אפשרות להתייחס לנתוני זמן אמת (חוץ מלהיכנס ל LMC ולהסתכל מה קורה כמובן).

אז אם אתם באמת השקעתם ורכשתם רישיון Enterprise או Platinum אתם יכולים להפעיל את ה Resource Manager ולהתקין את ה Web Interface for Resource Manager (או WIRM) של ג'ייסון קוגנר (http://www.jasonconger.com/Web-Interface-for-Resource-Manager-2-2.aspx) כדי להציג בצורה גרפית וברורה את כל הנתונים שנאספו (בלי רישיונות בשימוש).
אבל גם אם יש לכם רק את רישיונות ה Advanced זה לא אומר שאתם צריכים להשלים עם העובדה שאי אפשר לקבל נתונים סטטיסטיים וזהו, ד"א בעלי הרישיונות המשודרגים לא יכולים להגיד לעצמם "אחחח, איזה כיף, שילמתי ועכשיו יש לי את כל היכולות במוצר", אז כמו שכבר ציינתי, זה לא בדיוק נכון, כדי לקבל סטטיסטיקות וגרפים שלא מתוך ה LMC עדיין נכונה עבודה.

כדי להציג את הנתונים הרלוונטיים לנו, נשתמש במערכת MRTG או בשמה המלא Multi Router Traffic Grapher, שרבים מכירים דווקא מתחום התקשורות ובאמת ההתחלה שלה היתה בניטור עומסים בקווי תקשורת (מי שרוצה הסבר יותר מורחב: http://en.wikipedia.org/wiki/MRTG) , אבל מהר מאוד אנשים הבינו שהמערכת בסך הכל מציגה מידע מנתונים שהיא מקבלת מבחוץ ולא ממש משנה לה מאיפה הם הגיעו והתחילן להשתמש בה גם למדידת רכיבים אחרים (סוויצ'ים,ראוטרים, שרתים, שירותים מסוימים ומה לא בעצם), אז עם ככה, למה שגם אנחנו לא נשתמש ביכולות שלה לצרכינו, לעבודה.

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

כהכנה מראש, צריך להוריד Perl ואת הגרסא האחרונה של ה MRTG (הגרסא היציבה הנוכחית היא 2.16.0).
Perl – ActivePerl 5.8.8: http://www.activestate.com/store/activeperl
MRTG – Version 2.16.0: http://oss.oetiker.ch/mrtg/pub

אחרי שהקבצים בידינו נתקין את ה Perl ונחלץ את קובץ ה zip של ה MRTG ל- c:\mrtg-2.16.0, לשם הנוחות כדאי להכניס את תיקיית ה bin של Perl ל path של השרת.
כדי לבדוק שה Perl הותקן ללא בעיות, הכי פשוט להכנס לתיקיית ה bin של ה MRTG ולהריץ perl mrtg, אם הכל הלך כשורה נקבל מידע על גרסת ה mrtg שברשותנו, לדוגמא:

clip_image002[21]

נסיים את שלב ההכנות המוקדמות ביצירת הספריה בה נשמור את כל הקבצים השייכים ל mrtg עבור החווה, הדוחות עצמם, סקריפטים וקבצים cfg.
לשם הדוגמא התיקיה אצלי נמצאת ב: D:\Citrix_mrtg, ב root שלה יווצרו קבצי הדוחות, תחת ספריית scripts יישמרו הסקריפטים הרלוונטיים ותחת ספריית cfg יישמרו קבצי ה cfg.

קבצי cfg, סקריפטים ומה שביניהם
ה MRTG עובד מול קבצי cfg שבהם מרוכזים כל ההגדרות ליצירת הגרפים, בין הנתונים נמצא גם הסקריפט שאותו יש להריץ כדי לקבל את הנתונים המספריים.
כדי להוציא את הנתונים הרלוונטיים לנו מהחווה נשתמש ב vbscript קצר, הערה קטנה לסדר, אני עושה כאן שימוש ב mfcom של Citrix אז כדי שהסקריפט גם יעבוד יש להתקין Citrix PS SDK (http://support.citrix.com/article/CTX114194) על השרת או פשוט להריץ משרת עליו מותקן Citrix PS.

נתחיל עם סקריפט שסופר את מספר ה sessions הפעילים בחווה (active ו- disconnected), נשמור אותו ב d:\Citrix_mrtg\scripts\list_sessions.vbs:

Set theServer = CreateObject("MetaFrameCOM.MetaFrameServer")

theServer.Initialize 6, "CTX02"
count1 = 0
dis_count = 0

For Each aSession In theServer.Sessions
    if (asession.sessionstate <> 7) and (asession.username <> "") then
        if asession.sessionstate = 5 then
            dis_count = dis_count + 1
        end if
    count1 = count1 + 1
    end if
Next

Wscript.Echo count1
WScript.Echo dis_count
Wscript.Echo now
WScript.Echo "Active Sessions"
WScript.Echo "Inactive Sessions"

הפלט יהיה משהו כמו זה:clip_image002[23]
בשורה הראשונה מספר ה sessions הפעילים בחווה.
בשורה השניה מספר ה sessions שנמצאים ב disconnected.
בשורה השלישית התאריך והשעה בה רץ הסקריפט.
בשורה הרביעית והחמישית הסבר לגבי מה אומרות שורות 1 ו-2.

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

WorkDir: D:\Citrix_mrtg                                                  התיקיה בה ייווצרו הדוחות
RunAsDaemon: yes                                    להריץ אוטומטית פעם בחמש דקות            

Title[Farm-sessions]: TermServName: # Sessions
Target[Farm-sessions]: `cscript.exe D:\Citrix_mrtg\Scripts\List_sessions.vbs //nologo`
YLegend[Farm-sessions]: Sessions
Options[Farm-sessions]: gauge, nopercent
MaxBytes[Farm-sessions]: 523444000
ShortLegend[Farm-sessions]: sessions
Legend1[Farm-sessions]: Active Sessions
Legend2[Farm-sessions]: Disconnected Sessions
LegendI[Farm-sessions]: Active:
LegendO[Farm-sessions]: Disconnected:
PageTop[Farm-sessions]: Active / Disconnected Sessions

את קובץ נשמר תחת השם farm.cfg בתיקיית D:\Citrix_mrtg\cfg.

נריץ את ה mrtg על קובץ ה cfg שיצרנו כדי לראות שהכל עובד כמו שצריך:

perl C:\mrtg-2.16.0\bin\mrtg D:\Citrix_mrtg\cfg\farm.cfg

יש לשים לב שהריצה תמשיך כל עוד לא נעצור אותה ידנית (כלומר, תעשה בדיקה מול החווה פעם בחמד דקות, הזמן המינמלי האפשרי), זאת מכיוון שהגדרנו RunAsDaemon: yes, אם נגדיר את המשתנה ל no תתבצע ריצה אחת בלבד.
אחרי סיום הריצה, יווצרו לנו 7 קבצים חדשים בתיקייה D:\Citrix_mrtg (הנתיב שהוגדר בשדה ה WorkDir בקובץ ה cfg).
הקובץ הראשי שיעניין אותנו יותר מכולם יהיה Farm-sessions.html (שם הקבצים יהיה זהה למה שכתוב בסוגריים המרובעים בקובץ ה cfg) בו יהיה פירוט של הנתונים לפי יומי/שבועי/חודשי/שנתי, לדוגמא (אחרי ריצה של כמה שבועות):

clip_image002[25]
אפשר לראות שבירוק מסומנים כל ה Active sessions והקו הכחול מסמל את מספר ה disconnected ביניהן.

אחרי שיש לנו סקריפט שבודק את כמות ה sessions בחווה, בואו נראה איך עושים את אותו הדבר רק בהתייחס לשרת ספיציפי בחווה.
בעקרון הסקריפט מאוד דומה לזה שיצרנו עבור על החווה, רק שפה נעשה בדיקה מול שרת ספיציפי.
גם כאן, נשמור את הקובץ בתיקיית ה scripts, במקרה שלנו: D:\Citrix_mrtg\scripts\ctx02.vbs.

Set theServer = CreateObject("MetaFrameCOM.MetaFrameServer")

theServer.Initialize 6, "CTX02"
count1 = 0
dis_count = 0

For Each aSession In theServer.Sessions
    if (asession.sessionstate <> 7) and (asession.username <> "") then
        if asession.sessionstate = 5 then
            dis_count = dis_count + 1
        end if
    count1 = count1 + 1
    end if
Next

Wscript.Echo count1
WScript.Echo dis_count
Wscript.Echo now
WScript.Echo "Active Sessions"
WScript.Echo "Inactive Sessions"

וגם פה, ניצור קובץ cfg מתאים (נשמור ב D:\Citrix_mrtg\cfg\ctx02.cfg):

WorkDir: D:\Citrix_mrtg
RunAsDaemon: yes

Title[CTX02-sessions]: TermServName: # Sessions
Target[CTX02-sessions]: `cscript.exe D:\Citrix_mrtg\Scripts\CTX02.vbs //nologo`
YLegend[CTX02-sessions]: Sessions
Options[CTX02-sessions]: gauge, nopercent
MaxBytes[CTX02-sessions]: 523444000
ShortLegend[CTX02-sessions]: sessions
Legend1[CTX02-sessions]: Active Sessions
Legend2[CTX02-sessions]: Disconnected Sessions
LegendI[CTX02-sessions]: Active:
LegendO[CTX02-sessions]: Disconnected:
PageTop[CTX02-sessions]: Active / Disconnected Sessions

ספירת רשיונות
פה מגיע החלק הטריקי באמת של כל הסיפור, אחרי אי אלו נסיונות להוציא את מספר הרשיונות בשימוש עם ה sdk (פניה ישירה ל wmi האחראי) התברר לי שהמספרים שאני מקבל אינם המספרים האמיתיים, לא נתתי לזה להשפיע ופשוט בחרתי להשתמש בפקודה מובנית של ה Citrix licenses server הלא היא ה lmstat.
תפקידה של ה-lmstat הוא לתת מידע לגבי שרת הרשיונות, כלומר, גירסא, מספר רשיונות בשימוש, מיקומם וכו'.
כאשר מריצים lmstat –f מקבלים רשימה של כל מי שלקח רשיון וסוג הרשיון שנלקח.
לדוגמא, החווה בעלת 55 רשיונות Citrix PS Advanced, כאשר נריץ lmstat –f נקבל משהו כזה:

clip_image002[27]

די פשוט להבין שכל שורה אשר מתחילה עם MPS וממשיכה עם שם שרת ה Citrix PS אשר משתמש בו (בתמונה הוא מטושטש כדי למנוע ממני תביעות כאלה ואחרות) והזמן בו הוא הרשיון שויך ל session.
אז אם אנחנו מבינים את הטכניקה, למה שלא ניצור סקריפט אשר מיישם אותה, אז זה מה שיצא לי (נשמור ב D:\Citrix_mrtg\scripts\licenses.vbs):

CommandLine = "c:\program files\citrix\licensing\ls\lmstat -f MPS_ADV_CCU"
Set objShell = CreateObject("WScript.Shell")
Set oExec = objShell.Exec(CommandLine)
countLicenses = 0

Do Until oExec.StdOut.AtEndOfStream
Input = oExec.StdOut.ReadLine
if InStr(Input,"start") and InStr(Input,"icense")=0 Then
countLicenses = countLicenses + 1
end if
Loop

Wscript.Echo countLicenses
WScript.Echo 55
Wscript.Echo now
WScript.Echo "In Use Licenses"
WScript.Echo "Installed Licenses"

בשורה הראשונה מוגדר מה הפקודה שתרוץ, במקרה שלי אני רוצה להתייחס רק לרשיונות ה advanced, מכיוון שכך אני מריץ lmstat –f "MPS_ADV_CCU".
שורה שמונה גורמת למעשה שהסקריפט יתייחס רק לשורות המתחילות עם MPS, כלומר התעלמות מכל השורות לפני הנתונים הרלוונטיים לנו.
בשורה 14 אני מדפיס ישר את מספר הרשיונות שמותקנים בשרת, ניתן גם פה לבדוק מול שרת הרשיונות מה מספר הרשיונות שמותקנים אצלו, אני פשוט התעצלתי.

גם פה, ניצור קובץ cfg (נשמור ב D:\Citrix_mrtg\cfg\licenses.cfg):

WorkDir: D:\Citrix_mrtg
RunAsDaemon: yes

Title[Licenses]: TermServName: # Licenses
Target[Licenses]: `cscript.exe D:\Citrix_mrtg\Scripts\licenses.vbs //nologo`
YLegend[Licenses]: Licenses
Options[Licenses]: gauge, nopercent
MaxBytes[Licenses]: 523444000
ShortLegend[Licenses]: Licenses
Legend1[Licenses]: In Use Licenses
Legend2[Licenses]: Installed Licenses
LegendI[Licenses]: In Use:
LegendO[Licenses]: Installed:
PageTop[Licenses]: In Use / Installed Sessions

אחרי שניתו לו לרוץ תקופה (perl C:\mrtg-2.16.0\bin\mrtg D:\Citrix_mrtg\cfg\licenses.cfg) נקבל את הדוחות הרלוונטיית, לדוגמא:

clip_image002[29]

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

WorkDir: D:\Citrix_mrtg
RunAsDaemon: no

#------- Farm's Total Sessions ----------

Title[Farm-sessions]: TermServName: # Sessions
Target[Farm-sessions]: `cscript.exe D:\Citrix_mrtg\Scripts\List_sessions.vbs //nologo`
YLegend[Farm-sessions]: Sessions
Options[Farm-sessions]: gauge, nopercent
MaxBytes[Farm-sessions]: 523444000
ShortLegend[Farm-sessions]: sessions
Legend1[Farm-sessions]: Active Sessions
Legend2[Farm-sessions]: Disconnected Sessions
LegendI[Farm-sessions]: Active:
LegendO[Farm-sessions]: Disconnected:
PageTop[Farm-sessions]: Active / Disconnected Sessions

#------- CTX02 Sessions ----------

Title[CTX02-sessions]: TermServName: # Sessions
Target[CTX02-sessions]: `cscript.exe D:\Citrix_mrtg\Scripts\CTX02.vbs //nologo`
YLegend[CTX02-sessions]: Sessions
Options[CTX02-sessions]: gauge, nopercent
MaxBytes[CTX02-sessions]: 523444000
ShortLegend[CTX02-sessions]: sessions
Legend1[CTX02-sessions]: Active Sessions
Legend2[CTX02-sessions]: Disconnected Sessions
LegendI[CTX02-sessions]: Active:
LegendO[CTX02-sessions]: Disconnected:
PageTop[CTX02-sessions]: Active / Disconnected Sessions

#------- CTX03 Sessions ----------

Title[CTX03-sessions]: TermServName: # Sessions
Target[CTX03-sessions]: `cscript.exe D:\Citrix_mrtg\Scripts\CTX03.vbs //nologo`
YLegend[CTX03-sessions]: Sessions
Options[CTX03-sessions]: gauge, nopercent
MaxBytes[CTX03-sessions]: 523444000
ShortLegend[CTX03-sessions]: sessions
Legend1[CTX03-sessions]: Active Sessions
Legend2[CTX03-sessions]: Disconnected Sessions
LegendI[CTX03-sessions]: Active:
LegendO[CTX03-sessions]: Disconnected:
PageTop[CTX03-sessions]: Active / Disconnected Sessions

#------- CTX04 Sessions ----------

Title[CTX04-sessions]: TermServName: # Sessions
Target[CTX04-sessions]: `cscript.exe D:\Citrix_mrtg\Scripts\CTX04.vbs //nologo`
YLegend[CTX04-sessions]: Sessions
Options[CTX04-sessions]: gauge, nopercent
MaxBytes[CTX04-sessions]: 523444000
ShortLegend[CTX04-sessions]: sessions
Legend1[CTX04-sessions]: Active Sessions
Legend2[CTX04-sessions]: Disconnected Sessions
LegendI[CTX04-sessions]: Active:
LegendO[CTX04-sessions]: Disconnected:
PageTop[CTX04-sessions]: Active / Disconnected Sessions

#------- CTX06 Sessions ----------

Title[CTX06-sessions]: TermServName: # Sessions
Target[CTX06-sessions]: `cscript.exe D:\Citrix_mrtg\Scripts\CTX06.vbs //nologo`
YLegend[CTX06-sessions]: Sessions
Options[CTX06-sessions]: gauge, nopercent
MaxBytes[CTX06-sessions]: 523444000
ShortLegend[CTX06-sessions]: sessions
Legend1[CTX06-sessions]: Active Sessions
Legend2[CTX06-sessions]: Disconnected Sessions
LegendI[CTX06-sessions]: Active:
LegendO[CTX06-sessions]: Disconnected:
PageTop[CTX06-sessions]: Active / Disconnected Sessions

#------- CTX07 Sessions ----------

Title[CTX07-sessions]: TermServName: # Sessions
Target[CTX07-sessions]: `cscript.exe D:\Citrix_mrtg\Scripts\CTX07.vbs //nologo`
YLegend[CTX07-sessions]: Sessions
Options[CTX07-sessions]: gauge, nopercent
MaxBytes[CTX07-sessions]: 523444000
ShortLegend[CTX07-sessions]: sessions
Legend1[CTX07-sessions]: Active Sessions
Legend2[CTX07-sessions]: Disconnected Sessions
LegendI[CTX07-sessions]: Active:
LegendO[CTX07-sessions]: Disconnected:
PageTop[CTX07-sessions]: Active / Disconnected Sessions

#------- CTX08 Sessions ----------

Title[CTX08-sessions]: TermServName: # Sessions
Target[CTX08-sessions]: `cscript.exe D:\Citrix_mrtg\Scripts\CTX08.vbs //nologo`
YLegend[CTX08-sessions]: Sessions
Options[CTX08-sessions]: gauge, nopercent
MaxBytes[CTX08-sessions]: 523444000
ShortLegend[CTX08-sessions]: sessions
Legend1[CTX08-sessions]: Active Sessions
Legend2[CTX08-sessions]: Disconnected Sessions
LegendI[CTX08-sessions]: Active:
LegendO[CTX08-sessions]: Disconnected:
PageTop[CTX08-sessions]: Active / Disconnected Sessions

#------- CTX09 Sessions ----------

Title[CTX09-sessions]: TermServName: # Sessions
Target[CTX09-sessions]: `cscript.exe D:\Citrix_mrtg\Scripts\CTX09.vbs //nologo`
YLegend[CTX09-sessions]: Sessions
Options[CTX09-sessions]: gauge, nopercent
MaxBytes[CTX09-sessions]: 523444000
ShortLegend[CTX09-sessions]: sessions
Legend1[CTX09-sessions]: Active Sessions
Legend2[CTX09-sessions]: Disconnected Sessions
LegendI[CTX09-sessions]: Active:
LegendO[CTX09-sessions]: Disconnected:
PageTop[CTX09-sessions]: Active / Disconnected Sessions

#------- Licenses ----------

Title[Licenses]: TermServName: # Licenses
Target[Licenses]: `cscript.exe D:\Citrix_mrtg\Scripts\licenses.vbs //nologo`
YLegend[Licenses]: Licenses
Options[Licenses]: gauge, nopercent
MaxBytes[Licenses]: 523444000
ShortLegend[Licenses]: Licenses
Legend1[Licenses]: In Use Licenses
Legend2[Licenses]: Installed Licenses
LegendI[Licenses]: In Use:
LegendO[Licenses]: Installed:
PageTop[Licenses]: In Use / Installed Sessions

נשמור את הקובץ ב D:\Citrix_mrtg\cfg\full.cfg.
ניצור קובץ batch אשר יריץ את כל העניין וניצור schedule job אשר יופעל כל 5 דקות (מכיוון שהגדרנו את RunAsDaemon: no)
קובץ ה batch יכיל את הפקודה הנ"ל:

perl C:\mrtg-2.15.2\bin\mrtg D:\Citrix_mrtg\cfg\full.cfg

בסופו של תהליך, בתיקיית D:\Citrix_mrtg ירוכזו כל קבצי הנתונים שהגדרנו לאסוף בקובץ ה cfg.

ודוגמא קטנה לסוף, אפשר ליצור קובץ html פשוט שירכז עבורנו את כל הנתונים ובלחיצה יפנה אותנו לנתונים הרלוונטיים (אני השתמשתי ב word כדי ליצור אותו):

clip_image002[31]

Project Apollo, פרק 2

זוכרים שכתבתי פה על Project Apollo של Citrix, טוב נו, אני יודע, מאז כבר הגיעה הישרדות ואיתה נתוניה הטבעיים (או שבעצם לא כ"כ) של מרינה ומאז לא ממש מעניין אותכם שום דבר אחר, אז עם ככה, אני אזכיר, זה מה שכתבתי אז, "שם הקוד הזמני לטכנולוגיה חדשה המפותחת ע"י Citrix וייעודה לשפר את יכולת התצוגה המעוברת על גבי ה ICA או וירטואליזציה של מולטימדיה במילים מפוצצות יותר, למשל תמיכה מלאה בתצוגת Aero בתחנה המרוחקת ובאיכות לא רעה בכלל" ומי שרוצה עוד פרטים, מוזמן.

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

אחח הלימודים האלה אני אומר לכם

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

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

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

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

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

image
*עזבו אותכם בגד ים, ליאור אמר שנשארו לו חולצות Windows Live