שדרוג שרת לינוקס אבונטו 18.04 ל 20.04
-
כידוע אבונטו מוציאים אחת לשנתיים גרסה TLS של תמיכה לטווח רחוק של גרסה יציבה.
לפני שבוע יצאה הגרסה החדשה של 20.04.
אשמח לדעת:
א. האם יש טעם ועניין לבצע עדכון רק כי יש גרסה חדשה יותר?
ב. יש אפשרות לשדרג גרסה על שרת קיים? או רק להקים שרת חדש מעודכן ועליו להקים מחדש את הדברים שאני צריך.
ג. בשרת הנוכחי שלי יש לי גרסה mysql 5.7 ואני רוצה לשדרג לחדש יותר (נראה לי 8 ) [בגלל שיש שם פיצר שניתר להשתמש במידע ששלפת בשאילתה זו שיחזור על עצמו בקלות (במקום select בתוך select בתוך select), לא זוכר כעת בדיוק למה אני מתכווין, אבל זה פיצר שמספר פעמים יצא לי שזה יכול לעזור לי].
כמו"כ מנהל החבילות של nodejs ה npm השתבש ומופיע כלא קיים, ומהחיפושים שעשיתי מזמן ראיתי שחייבים להסיר את נוד ולהתקין מחדש.
לכן אני חושב אולי זה הזדמנות לשדרג בצורה גורפת, לשרת מעודכן בהכל.
השאלה א"כ איך מבצעים את זה?
את הקבצים לא כ"כ מסובך להעביר, ובעצם להכין את השרת על ידי העברת כל הקבצים ורק אח"כ לבצע את המעבר זה לא בעיה, הבעיה היא בהעברת מסד הנתונים, שהוא כל הזמן בשימוש וכל הזמן נוספים בו שורות, ולהעביר את הdb אמור לקחת זמן, מדובר ב 5.7GiB, וחוץ מזה, איך באמת מעבירים את הדאטה משרת לשרת כאשר יש שוני בין הגרסאות?
אשמח להחכים.
תודה רבה -
-
אני מסכים @nigun על שההבדל לא משמעותי.
ממילא אני ודאי לא הייתי רץ לעשות זאת בשרת ייצור בלי סיבה קונקרטית (למרות שבשרת מהר זה לוקח ממש מעט זמן העדכון וממש רגעים שהוא offline אם אינני טועה, אבל אני לא רוצה להיות זה שישלם את מחיר המקרים הלא רגילים בהם זה מסתבך/מתארך).נ.ב. בקשר לDatabase נפרד זה לא כלל ברזל, יש לזה מעלות באבטחה ובידוד ביצועים ובעיות ביצועים, אבל יש צדדים לכאן ולכאן, ממילא הכל תלוי בסיטואציה ובסגנון הסביבה.
-
@חוקר אמר בשדרוג שרת לינוקס אבונטו 18.04 ל 20.04:
נניח שכן, (למרות שלדעתי כשמדובר על שרת בודד אז חבל סתם לקרוא נתונים משרת אחר, וכל עוד אין לי כמה שרתים שאז אני חייב להקצות אחד לד"ב אני לא בטוח שזה עדיף( אז בכל מקרה השאלה איך מבצעים את המעבר הכי מהר
א"כ, תקים שרת נוסף על מכונה נפרדת, ותעשה העברה של התעבורה אליו.
זה נושא של load balance, אפשר לעשות את זה בהרבה דרכים, אבל אמור להיות את זה מובנה בכל ספק VPS. -
משום מה לא קיבלתי התראות של הודעות חדשות בנושא זה, אז בכל מקרה התקדמתי לבד בבדיקת עניין המעבר, בציעתי התקנה של מה שאני צריך בשרת חדש נקי
lemp node pm2 וכו'.
מחיפוש ברשת לגבי העברת ד"ב היה נראה שהפתרון הוא לבצע יצוא וגיבוי על ידי mysqldump.
בהתחלה ניסיתי לבצע יצוא מלא ושחזור מלא של כל הטבלאות אבל אז נתקע לי טבלת היוזרים, ולא ניתן היה לשנות ולהוסיף יוזרים, אז לבסוף עבדתי לפי ההנחיות כאן https://dev.mysql.com/doc/refman/8.0/en/mysqldump-upgrade-testing.html אך ציינתי במפורש רק את הטבלאות שלי ולא כל הטבלאות, ואז ב"ה עבר ללא בעיה.
את העברת הקבצים (קובץ היצוא של הד"ב כמעט 3G) ואת כל קבצי הPHP וNODEJS העברתי בין השרתים על ידי scp וזה עבר ממש מהר ובקלות.
ובתכלית נראה שהכל תקין וכמעט מוכן לבצע את העברה.
נותר רק להתקין את תעודת האבטחה לדומיינים (קצת בעיה, היות וכעת הדומיינים מפנים לIP של השרת הקודם, וברגע שיהיה מוכן אני סך הכל מעביר את הIP לשרת החדש, ולכן בינתיים זה בעיה ליצור אימות..)
ובנוסף להעביר מחדש את הד"ב ברגע שהכל מוכן.
הייצוא + העברה + פריסה מחדש, אמור לקחת לכאורה 45 דקות בערך.
שבינתיים הכל מחובר לשרת הישן, אך אצטרך לחסום את אפשרות הכתיבה לד"ב כדי שמשעת הייצוא ועד סיום היבוא והחיבור לחדש ובדיקה שהכל תקין לא יהיה אפשרות לבצע שום פעולה.
(אשמח להמלצה איך לבצע את הנעילה)
מקוה מאוד שלא פיספסתי משהו