מחפש איש PERL

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

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

האם אני מרוצה מהמצב הנוכחי? ממש לא.

כשאני מדמיין פאנל, אני מדמיין פאנל הרבה יותר עשיר ממה שקיים אצל כל מתחרה, פאנל “חמישה כוכבים”. אני רוצה שפאנל יהיו לפחות חלק מהדברים הבאים:

  • התחברות סריאלית (וירטואלית) לשרת, והתחברות גרפית לשרת גם אם הוא קרס. לא תמיד שרות ה-syslog מראה על מה המכונה קרסה, וב-Windows שרותי ה-Event לא תמיד מתעדים הכל כשמופיע מסך כחול. התחברות כזו יכולה לסייע ללקוח לראות מה באמת הבעיה.
  • החלפת מערכות הפעלה והתקנת גרסאות “זרות”. נניח שלקוח רוצה להרים שרת Asterisk והוא לא מעוניין להרים מערכת CentOS ולהקים עליה מאפס את הכל, אלא הוא רוצה להרים Flash in a box מקובץ ISO שקיים במערכת. הפאנל יאפשר לו להצביע על מיקום ה-ISO, המערכת תוריד את ה-ISO ותתחיל בהתקנה ואותו לקוח יוכל להתחבר בחיבור ישיר (סעיף קודם) כדי להמשיך עם ההתקנה.
  • גרפים עשירים: איך המכונה שלך מבחינת מעבד, זכרון ודיסק בזמן אמת, ביום האחרון, חודש אחרון, שנה אחרונה וכו’. יש לך אירוע חשוב? תוכל להתחבר, ולראות ב”שידור חי” מה קורה עם השרת מבחינת עומס, ומכיוון שהמערכת דוגמת מבחוץ (ברמת Host ולא ברמה של SNMP מה-VPS עצמו) תוכל לראות את הגרפים בזמן אמת גם כשהמערכת עמוסה.
  • יצירת Snapshots ושחזור מהם, לפי כמות שהלקוח בוחר. (יעיל מאוד כשאיש הסיסטם החדש שוב שכח ליצור קובץ גיבוי להגדרות ועכשיו הכל מתפקשש)
  • מערכת “מחשוב ענן” – לקוח יכול להקים עוד שרתים נוספים ולהרוג אותם כרצונו עם Master Image שהוא יוצר מבלי לעבור בירוקרטיה.
  • דינמיות מלאה: צריך עוד ליבות? עוד זכרון, עוד דיסק? עוד רוחב פס? כמה קליקים עם העכבר ויש לך את זה מבלי למחוק את המערכת.

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

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

מדוע אני צריך מישהו עם ידע רציני ב-PERL? כי אני עובד עם VMWare ו-VMWare מציעים SDK ב-Perl או בדוט-נט. כחובב קוד פתוח אני כמובן לא מעוניין בפתרונות דוט-נט, אז נשאר PERL. אני מעדיף שהפרוייקט ירוץ ישירות מול השרתים ולא מול מערכת vSphere מרכזית של VMWare (מסיבה פשוטה: תקציב. VMWare העלו את המחירים בטירוף לאחרונה ושימוש במערכת vSphere שלהם תייקר את כל העניין).

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

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

  • יושכר מתכנת PERL שילמד קצת את ה-SDK ויבדוק יכולת התכנות של מספר דברים שאבקש ממנו לבדוק. על חלק זה ישולם למתכנת לפי שעה.
  • אם הדברים מתאפשרים, יסוכם ביני לבין המתכנת פרוייקט של כתיבת סקריפטים שונים כדי לבצע את העבודות עצמן. מה שהוא יכתוב יהיה ה-Back end, כלומר מישהו “מקדימה” יפנה אל הסקריפטים עם פרמטרים והסקריפטים יבצעו את העבודה ויציגו את התוצאה.
  • בסמוך לסיום החלק הנ”ל יושכר מתכנת נוסף כדי להרים מערכת Front End (כפי הנראה ג’ומלה או דרופל) שתציג למשתמש את כל הממשק בצורה ויזואלית יפה, ולמשתמש יהיו חיים קלים בניהול דרך הפאנל.

לפיכך, להלן מה שאני מחפש:

  • מישהו עם נסיון רציני ב-PERL. לא מישהו שיש לו נסיון של חודש ב-20 שפות.
  • רצינות ועמידה בלוח זמנים
  • עדיפות לאחד שיכול להוציא חשבוניות מס
  • רצוי אחד עם “תיק עבודות” שיכול להראות מה הוא יצר בעבר, או לפחות תיאור של מה שיצר בעבר
  • שתהיה לו סבלנות

אם אתם מכירים אחד כזה, אתם מוזמנים להפנות אותו אליי באימייל: [email protected]

תודה וחג שמח לכולם

Comments

comments

5 תגובות בנושא “מחפש איש PERL

  1. א. בהצלחה.
    ב. מזוית של פיתוח מוצר תוכנה, ועל אחת כמה וכמה מוצר שהתפקיד העיקרי שלו זה לתת ממשק משתמש נוח וקל להבנה, אני מציע לך קודם כל לתכנן איך זה יראה (ממש לצייר mock-up של מסכים ותיאור של "סיפורים" איך כל מני משימות יעשו) ורק אח"כ לתרגם את זה למשימות טכניות של "איך מממשים את התוכנה הזו" וכו'.
    ג. למרות מה שאמרת על המגבלות של libvirt עם vmware ב-linux-il, הייתי מציע לבדוק הייטב איך תממש את זה בצורה שלא תנעל אותך לגמרי עם vmware, אפילו אם בינתיים זה יעבוד רק איתם.
    ד. הרגע מצאתי מסלשדוט את הדבר הבא, זה לא הראשון שעושה את זה (ssh בווב) אבל עדיין אולי יתאים לאחד ה"סיפורים": https://github.com/liftoff/GateOne

    • א. תודה 🙂
      ב. זווית עיצובית: זה יהיה בשלב הבא. יש לי כבר רעיון בראש ואני חושב לבסס את זה על ג'ומלה, ושם ממש לא חסרים עיצובים שאפשר לרכוש ולהשתמש, אבל קודם כל חשוב לי שהדברים שאני רוצה יהיו ברי הרצה ברמת ה-Command Line, אחרי זה הממשק הוובי יוכל לקרוא לזה.
      ג. אני מבין אותך ואני מסתכל על libvirt, ואני עדיין מנסה להבין כמה הוא תומך דרך הדרייברים שלו מבחינת הגדרות בכל ה-Features של VMWare במכונות, דברים כמו: Resource Allocation ברמת המגהרץ, NUMA וכו' – אם אני יכול להגדיר דרך ה-libvirt ולשלוח חזרה את זה למכונה. הדוקומנטציה לא ממש מסייעת במקרה הזה, אז צריך לבדוק עוד.
      ד. מכיר את זה, אני משתמש ב-shellinabox שעובד אצלי מצוין, גם את זה אני צריך לבדוק כמה תמיכה יש לזה מבחינת Serial או דרך מכונה מתווכת.

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

        • סליחה שחכתי – יותר מ"להגביל" – אם אין לך רעיון טוב של איך יראה הממשק אתה גם עלול לבזבז משאבים על "חלקים אחוריים" שבסוף לא תישתמש בהם בממשק.

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

סגור לתגובות.