בדף הזה מוסבר על עמידות האפליקציות ב-Google Cloud NetApp Volumes ואיך לקוחות NFS, SMB ו-iSCSI מטפלים בהפסקות זמניות של קלט/פלט. למרות ש-NetApp Volumes זמין מאוד, פעולות קלט/פלט עשויות להיעצר לזמן קצר במהלך תחזוקה מתוכננת או אירועי שירות לא מתוכננים. בדף הזה יש גם המלצות להגדרת זמני קצוב לתפוגה, כדי להבטיח פעולה חלקה של האפליקציה, במיוחד כשמשתמשים בתוכנת אשכולות כמו Pacemaker.
שיקולים לגבי עמידות האפליקציה
למרות ש-NetApp Volumes זמין מאוד, אירועי תחזוקה מתוכננים כמו עדכוני פלטפורמה, שדרוגי שירות, שדרוגי תוכנה או כשלים לא מתוכננים ברכיבים בשירות עלולים להוביל להפסקות קצרות בפעולות קלט ופלט (I/O).
מידע נוסף על אירועי תחזוקה מתוכננים ועל הפסקות שירות לא מתוכננות זמין במאמר מעקב אחרי אירועי תחזוקה ותכנון לקראתם.
השהיות של קלט/פלט
תוכנת לקוח של Network File System (NFS), פרוטוקול SMB ו-iSCSI בתוך מערכת ההפעלה מטפלת בהפסקות קצרות של קלט/פלט. הלקוח מחכה ומנסה שוב את פעולות הקלט/פלט בלי להעלות את הבעיה לאפליקציה. הפסקות קצרות כאלה נחשבות כהפסקות שלא משבשות את הפעולה, כי למרות שמשתמשי האפליקציה עשויים לראות זמני תגובה ארוכים יותר, האפליקציה לא מדווחת על שגיאות קלט/פלט.
במקרה של הפסקות ארוכות יותר של קלט/פלט, ההתנהגות תלויה בלקוח NFS, SMB או iSCSI של מערכת ההפעלה ובפסק זמן פוטנציאלי שהוגדר באפליקציה. בקטעים הבאים מפורטים פרטים ספציפיים לפרוטוקול לגבי השהיות של קלט/פלט.
השהיות של קלט/פלט ב-NFS
כל השיחות עם שיתוף NFS שלא זמין ומוגדר כקשיח נחסמות בלקוח NFS וממתינות ללא הגבלת זמן עד ששרת ה-NFS יגיב שוב. בזמן שהלקוח של NFS ממתין, מופיעות הודעות ביומני הלקוח שמציינות ששרת NFS לא מגיב.
מנקודת המבט של האפליקציה, פעולות קלט/פלט כמו קריאה או כתיבה נחסמות ונשארות בהמתנה עד ששיתוף ה-NFS מחזיר תשובה בהצלחה. במהלך הפסקות קלט/פלט, אף פעולת קלט/פלט לא הולכת לאיבוד, ו-NetApp Volumes מבטיח עקביות של הנתונים, אלא אם מפסיקים בכוח פעולות קלט/פלט ממתינות בצד הלקוח.
שימוש באפליקציות של תוכנת אשכולות כדי להפוך את המעבר לגיבוי לאוטומטי
אם אתם משתמשים באפליקציות של תוכנות אשכולות כמו Pacemaker במכונות וירטואליות של לקוחות כדי לבצע אוטומציה של מעבר לגיבוי במקרה של כשל באפליקציה, אתם צריכים להגדיר את פסק הזמן של שיתופי NFS כך שיוכלו לעמוד באירועי תחזוקה של NetApp Volumes. במקרים כאלה, הגיבוי מפסיק פעולות קלט/פלט (I/O) שממתינות בלקוח, ויכול לגרום לאובדן של עסקאות. מומלץ להגדיר את ערכי הזמן הקצובים לתפוגה הבאים:
| סוג הפרוטוקול | זמן קצוב מומלץ | הערות |
|---|---|---|
| שיתופי NFSv3 | 60 שניות (לרמות השירות Standard, Premium, Extreme ו-Flex Unified)
120 שניות (לרמת השירות Flex File) |
מומלץ להשתמש בשיטת גידור, שבה משתמשים באפשרות nolock mount במקום להסתמך על נעילות NFS. |
| NFSv4.1 | 105 שניות (ברמות השירות Standard, Premium, Extreme ו-Flex Unified)
165 שניות (ברמת השירות Flex File) |
פרוטוקול NFSv4.1 מוסיף באופן אוטומטי נעילה מהימנה על NFSv3 (NFSv4.x RFC, סעיף 9.6.2), שאפשר להשתמש בו כמנגנון גידור. שחזור מצב הנעילה מוסיף עוד 45 שניות. |
השהיות של קלט/פלט בשיתוף באמצעות SMB
בניגוד ל-NFS, סשנים של SMB משתמשים בחיבור שיכול להגיע למצב פסק זמן. בדרך כלל אין פסק זמן ב-NetApp Volumes.
זמן קצוב לתפוגה של סשנים
תוקף של סשן מוגדר בצד הלקוח. ברירת המחדל של הזמן הקצוב לתפוגה עבור לקוחות Windows היא 60 שניות. אתם יכולים להריץ את הפקודה Get-SmbClientConfiguration/Set-SmbClientConfiguration באמצעות הפרמטר SessionTimeout כדי לקרוא או לשנות את הזמן הקצוב לתפוגת הסשן.
אם מתרחש תוקף של סשן, סשן ה-SMB נקטע ומוצגת שגיאת קלט/פלט לאפליקציה שמבצעת את הקלט/פלט. בדרך כלל, סייר הקבצים או אפליקציות Microsoft 365 מתחברים מחדש ברגע שהמשתמש ניגש שוב לשיתוף SMB. כשנתקלים בשגיאות קלט/פלט, חלק מהאפליקציות מנסות להתחבר מחדש ולנסות שוב את פעולת הקלט/פלט שנכשלה, ואחרות לא. כדי להבין איך האפליקציה מטפלת בפסק זמן של SMB ופועלת בצורה גמישה בשיתופי SMB, אפשר לעיין במסמכי התיעוד של ספק האפליקציה.
שיתופים זמינים באופן רציף (CA) הם תכונה של SMB3.x שמשפרת את חוסן (resilience) יתירות הכשל באפליקציות דמויות מסד נתונים. NetApp Volumes תומך בשיתופים שזמינים באופן רציף ל-Microsoft SQL Server ול-FSLogix.
השחזור אחרי כשל משתפר בכל גרסה חדשה של SMB. NetApp Volumes תומך ב-SMB בגרסאות 2.1, 3.0 ו-3.1.1. אם אפשר, משתמשים בגרסה העדכנית ביותר של SMB שנתמכת. Windows 10/Server 2016 ואילך תומכות בגרסה העדכנית ביותר של SMB 3.1.1.
אמצעי זהירות לשימוש ב-SMB שמבוססים על אפליקציות
אפליקציות מסוימות שמבוססות על SMB דורשות SMB Transparent Failover. התכונה 'מעבר שקוף ליתירות כשל של SMB' מאפשרת לבצע פעולות תחזוקה בנפחי SMB בתוך NetApp Volumes בלי להפריע לקישוריות לאפליקציות שרת שמאחסנות נתונים וניגשות אליהם. NetApp Volumes תומך באפשרות של שיתופי SMB שזמינים באופן רציף, כדי לוודא שאפליקציות ספציפיות תומכות ב-SMB Transparent Failover. שימוש בשיתופי SMB שזמינים באופן רציף תומך רק בעומסי העבודה הבאים:
מכולות של פרופילים של משתמשים ב-FSLogix
Microsoft SQL Server (לא Linux SQL Server)
שיתופים זמינים תמיד של SMB לא תומכים באפליקציות בהתאמה אישית.
השהיות של קלט/פלט ב-iSCSI
בסביבות Linux ו-Windows, לקוחות iSCSI (יוזמים) מטפלים בהשהיות של קלט/פלט על ידי ניסיון חוזר של פקודות עד שהיעד (NetApp Volumes) הופך לזמין. במהלך אירועי תחזוקה קצרים, מאתחל ה-iSCSI מנסה להתחבר מחדש ולחדש פעולות קלט/פלט בהמתנה, מה שעוזר לשמור על עמידות האפליקציה.
זמן קצוב לתפוגה ב-iSCSI
הגדרה נכונה של פסק זמן ב-iSCSI חיונית לשמירה על עמידות האפליקציה במהלך אירועי תחזוקה או שיבושים לא צפויים בשירות.
במערכות Linux, כרכי NetApp משתמשים בהגדרות ברירת המחדל של iSCSI initiator. ההגדרות האלה כוללות הגדרות ספציפיות ל-NetApp בתוך Linux Device Mapper Multipath (מיפוי נתיבים של מכשיר Linux), שמנהל באופן אוטומטי את דרישות הזמן הקצוב לתפוגה במהלך אירועי תחזוקה של NetApp Volumes.
עם זאת, במערכות Windows, צריך לשנות את הגדרות ה-MPIO של Windows באמצעות הפקודה הבאה כדי לטפל באירועי התחזוקה של NetApp Volumes.
Set-MPIOSetting -NewPathVerificationState Enabled ` -NewPDORemovePeriod 130 ` -NewRetryCount 6 ` -CustomPathRecovery Enabled ` -NewPathRecoveryInterval 30 `
במהלך השהיות של קלט/פלט, ה-initiator של iSCSI מנסה שוב פקודות ושומר על קלט/פלט ממתין למשך הזמן של פסק הזמן. אם חורגים מהזמן הקצוב לתפוגה, יכול להיות שמערכת ההפעלה תדווח על שגיאות קלט/פלט לאפליקציה, מה שעלול לגרום לאובדן של טרנזקציות או לדרוש שחזור ברמת האפליקציה.
שיקולים לגבי אפליקציות וקלאסטרים
אם אתם משתמשים בתוכנות או באפליקציות לאשכולות שמבצעות מעבר אוטומטי לגיבוי במקרה של כשל, אתם צריכים להגדיר את ערכי הזמן הקצוב לתפוגה של iSCSI כך שיתאימו לאירועי תחזוקה של NetApp Volumes. מעבר גיבוי אוטומטי מוקדם מדי עלול לבטל פעולות קלט/פלט (I/O) שעדיין לא הסתיימו, ולגרום לאובדן נתונים או עסקאות. כדי לקבל מידע על שיטות מומלצות להגדרת ערכי הזמן הקצוב לתפוגה של iSCSI, תמיד כדאי לעיין במסמכי התיעוד של האפליקציה ומערכת ההפעלה.
שיבושים באפליקציות שקשורים לאירועי תחזוקה
יכול להיות שיהיו מדי פעם אירועי תחזוקה מתוכננים, למשל שדרוגים של הפלטפורמה ושדרוגים של תוכנת השירות. אירועי תחזוקה נחשבים לאירועים שלא גורמים להפרעה מנקודת המבט של פרוטוקול קבצים (NFS או SMB), כל עוד האפליקציה יכולה לטפל בהפסקות של קלט/פלט שעלולות להתרחש במהלך האירועים האלה.
במסלולי השירות Standard, Premium ו-Extreme, ההשהיות של קלט/פלט הן בדרך כלל קצרות ונמשכות בין כמה שניות ל-30 שניות.
ברמת השירות Flex, ההשהיות של קלט/פלט יכולות להיות עד 70 שניות.
המאמרים הבאים
שיקולי אבטחה בנושא Google Cloud NetApp Volumes