Got Silk?!

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

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

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

אפשר לראות שיש קשר ישיר בין גודל הדיסק ב GB וכמות ביצועי ה IOPS העומדת לרשותו. אפשר לראות בהערות גם שיש כמות ה CPU וכמות ה IOPS בגלל ששרתים עם יותר CPU יכולים לגבל הקצאת תקשורת נדיבה יותר, Network egress caps. משמעות הדברים היא שיתכנו מצבים בהם לקוחות צריכים לשלם על נפח דיסק ריק כדי לקבל יותר משאבי ביצועים ועל מעבדים מיותרים כדי לקבל יותר משאבי תקשורת אל הדיסקים.

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

אמזון קצת יותר מתוחכמים וקצת יותר קרובים למערכות All Flash של העשור האחרון כי הם אומרים ללקוחות שלא צריך לקנות עוד נפח בשביל ביצועים, אפשר לשלם ישירות על הביצועים. הם קוראים לזה Provisioned IOPS (io1), הלקוח במקרה הזה צריך לשלם פרמיה גם על הנפח וגם על הביצועים אבל לא צריך לשלם על "נפח ריק".

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

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

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

כלי שימושי נוסף שאנחנו מאפשרים ללקוחות הוא סנפשוטים רזים. תהליך יצירת סנפשוט בענן הוא תהליך ארוך ויקר. ב AWS למשל, בתהליך יצירת הסנפשוט מועתק המידע אל S3 ובכל סנפשוט נוסף יש להעתיק מידע נוסף, את המידע החדש. אנחנו מאפשרים ליצור סנפשוטים מידיים, מבוססי הצבעות בלבד, כך שאין צורך להזיז מידע או לשלם על נפח מידע נוסף ולכל סנפשוט ניתן לייצר View כלומר להשתמש בסנפשוט כהעתק עצמאי של המידע לשרתים אחרים, test/dev או אנליטיקה וכו'.

אנחנו רואים בבמוצע חסכון של 3:1 בשימוש ביכולות חסכון בנפח ולפחות עוד 30% חסכון על ידי שימוש בThin Provisioning וזה אומר שרק על ידי זה שריכזנו את המידע של הלקוח והכלנו עליו את היכולות האלו, הלקוח צורך עכשיו פחות מרבע מהנפח שהוא צרך קודם ובגלל שאנחנו לא נסנכים על ביצועי הדיסקים של תשתית הענן הרבע הזה הוא בדיסקים זולים יותר מהדיסקים הקודמים!

בפעם הבאה נדבר קצת על ביצועים, בתקווה ועד אז אבין את זה מספיק טוב בעצמי 😊

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

עדכון לפוסט!

כמו מהשמים שלחו לי לינק לסרטון הזה היום, החל מדקה 16:54 בערך אפשר לראות בדיוק כמה מורכבות האופציות לבחירת דיסקים ב AWS והתאמת ה EC2 instance לבחירה שלכם.

כבונוס, יש שם הדגמה של יכולות של blktrace. ביחד עם blkparse, btt ועוד סקריפט פייטון קטן (כן כן הרבה חלקים זזים) אפשר ממש להציג באופן קריא ונוח עד כמה ה IO שהשרת שלכם עושה הוא Sequential או Random, נתון שהרבה פעמים חסר לנו כשאנחנו באים לעשות סייזינג מסודר למערכות סטורג', אם אתם מאלו שעוד עושים כאלו דברים 🙂

credit AWS: https://youtu.be/wsMWANWNoqQ
credit AWS: https://youtu.be/wsMWANWNoqQ

כמו תמיד אשמח מאד לשמוע מכם!

שלכם,

ניר מליק

מה זה גיבוי ומה הופך פתרון גיבוי לפתרון טוב

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

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

 נתחיל בהגדרה מילונית, מה זה גיבוי?

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

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

של נתונים – פתרון גיבוי כולל בדרך כלל את היכולת לבחור אילו נתונים מגובים ובהתאם למדיניות הארגון לשמור את סוגי המידע השונים על פי הצורך (מידע פיננסי 7 שנים, מידע רפואי 90 שנים וכו')

לשחזור המידע המקורי – פתרון גיבוי כולל את האפשרות לשחזר את המידע בעת הצורך

לאחר אירוע –עותקי הגיבוי צריכים להיות זמינים לשחזור גם לאחר אירוע משמעותי כמו אובדן כלל המידע המקורי בשל כשל כללי של תשתיות המחשוב המקוריות

לא כל הגיבויים נולדו שווים?

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

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

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

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

מה עוד יכול פתרון טוב לכלול?

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

בשבוע שעבר הוכרזה חבילת העדכונים SP6 עבור Commvault 11. אחד הכלים המעניינים ביותר שנכללו בחבילה זו תחת Early Release הוא כלי מיגרציה של מידע מגובה מתוכנת הגיבוי הקודמת אל תוך ObjectStore מקוטלג של Commvault. הכלי מספק מענה לאחד האתגרים הכי משמעותיים בפרויקטים של החלפת פתרון גיבוי, ברוב המקרים, הפתרון הכי נפוץ עד היום היה פשוט להשאיר בצד את פתרון הגיבוי הישן לצרכי שחזור עד סיום ה retention. אם הלקוח הוא לא חברה בת יומיים התהליך הזה יכולת לקחת כמה שנים טובות שבהן צריך להמשיך לתחזק את הפתרון הישן, גם אם בתחזוקה בסיסית ביותר, לצד הפתרון החדש, Commvault  מאפשרת עכשיו להתגבר על פרויקט המרת הקלטות הכואב ולבצע מעבר מלא, כולל ה retention אל פתרון הגיבוי החדש.

אז מה עושים עם זה בפועל?

מדיניות גיבוי נפוצה היא מדיניות 3-2-1: שלושה העתקים של המידע, על שני סוגי מדיה שונים, לפחות העתק אחד מחוץ לאתר. על פי מרבית המקורות מייחסים הצלם דיוויד קרוג היה הראשון לנסח את המדיניות הזו והוא מקבל את הקרדיט הזה אפילו במסמך ההמלצות של US-CERT  כך שכנראה יש בזה משהו. לאחרונה ראיתי הרחבה של החוקיות הזו בבלוג של Veeam. זה לא פוסט חדש אבל נתקלתי בו רק לאחרונה והוא מדבר על 3-2-1-0 כאשר 0 הוא 0 טעויות. היכולת לבצע ולידציה של הגיבוי שנקראת אצלם SureBackup מסייעת לוודא שמשימות הגיבוי אכן התבצעו באופן תקין וכי ההעתקים קריאים ונגישים.

גם בשימוש ב snap manager for exchange  למשל, ניתן לשלב במשימת הsnap shot הרצה של eseutil כדי לוודא שההעתק שנוצר תקין. כאן, כשאני מזכיר את NetApp, אני בעצם סוגר מעגל שלם אל ראשית הבלוג וכאן התחיל הדיון אותו הזכרתי, מהו גיבוי? האם סנפשוטים הם גיבוי? לא, לדעתי לא, לא לבד בכל אופן. סנפשוטים יכולים להיות חלק מפתרון הגיבוי, הם במרבית המקרים הדרך הכי מהירה ליצור העתק של המידע וכן, במרבית המקרים, גם הדרך הכי מהירה לשחזר מידע מהעתק קצר טווח אבל, לבדם, הם לא עונים על מה שמגדיר בעיני פתרון גיבוי טוב, הם לא מקטלגים את המידע, לא שומרים אותו על עוד סוג מדיה, לא מוציאים העתק מחוץ לאתר וכו'.

פתרון כמו Commvault, פתרון כמו Veeam ברמות הרישוי הגבוהות או פתרון IntelliSnap שהוא רכיב Commvault המשולב כ OEM במערכות NetApp FAS, פתרון כזה משתמש באופן מובנה ותחת מדיניות גיבוי ארגונית אחת ביכולות הסנפשוט או הרפליקציה של מערכת האחסון וזה כבר עונה להגדרות שפירטתי.

איפה נרשמים?

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

אשמח לשמוע מה דעתכם

שלכם,

ניר מליק