בקולה: פחד מערפדים

שלום לכולם.

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

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

מבוא

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

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

ארכיטקטורה

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

ישנם 3 חלקים עיקריים, שכל אחד מהם הוא גם חבילת התקנה שונה: הבמאי, האחסון והקובץ. כפי שאתה יכול להסיק, שלח היא מכונת הלקוח (זו שזקוקה להעתקה), היא אחסון היא המכונה המאחסנת את העותקים האלה ו- מְנַהֵל המכונה היא שתזמור את כל התהליך. כמובן שיכולות להיות מספר מכונות לקוח (קובץ), מספר אחסון (למקרה שתרצה להפריד בין העותקים) ומנהל (למרות שהדבר ההגיוני יהיה אחד, אתה יכול לציין כמה).

קבצים, כלים ודמונים

אם כל זה אוטומטי זה על ידי שימוש בשדים. לכל חלק יש שד משלו: bacula-director, bacula-fd (file-daemon) ו- bacula-sd (אחסון-שד). וכל שד עובד על פי הגדרות הקבצים שלו, מתארח ב / וכו '/ bacula: bacula-dir.conf, bacula-fd.conf, bacula-sd.conf.

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

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

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

יש להזכיר גם כי פעולת Bacula מבוססת על קטלוג: מסד נתונים (לבחירה בין MySQL, SQLite ו- PostgreSQL) בו נרשמים כל האירועים, הכרכים, הלקוחות ... אין לגעת ביד במאגר זה באמצעות bconsole פקודות שונות ניתנות לאינטראקציה עם הקטלוג מבלי להשתמש בתחביר SQL.

בטחון

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

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

כרכים

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

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

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

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

העתק רמת ומשחזר

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

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

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

אוטומציה

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

יתר על כן, זה לא רק מאפשר לך לציין את הקבצים / תיקיות שיש להעתיק, אלא גם תומך בביצוע פקודות / סקריפטים לפני, במהלך ואחרי כל עבודה. לכן, אם רוצים לבצע גיבוי של מסד נתונים, תוכלו לציין את נתיב הסקריפט שנותן לכם את ה- dump ולהעתיק את ה- dump בהמשך. זה גם מאפשר לך לציין את הקבצים להעתקה בדרך כללית, להיות מסוגל להוסיף קבצים ספציפיים יותר ממכונת הלקוח עצמה. זה נורמלי שיש קובץ קבצים משותף לכל מערכות UNIX (שם מוגדרות התיקיות שיש להעתיק, / etc, / usr, / home / var ...), ואז כל לקוח יכול לציין את הקבצים שלו שהוא רוצה. יועתקו.

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

וכל זה ... איך זה עובד?

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

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

אֶפִּילוֹג

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

אני מקווה שאהבתם ועד לפעם הבאה!


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.

  1.   מטלטל דיג'ו

    כמה קישורים לאיש האתר, שלא לדבר. 😉

    http://www.bacula.org/es/
    http://www.bacula.org/en/?page=documentation

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

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

    1.    ווקר דיג'ו

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

    2.    ווקר דיג'ו

      בואה אני לא חושב שאני יכול לערוך ... אני משאיר כאן את הקישור לעיון הראשי של התיעוד, שחלקם יסתבכו עם כל כך הרבה קישור ...
      http://www.bacula.org/5.2.x-manuals/en/main/main/index.html

  2.   eulalio דיג'ו

    יש לקרוא זאת בפירוט ועיפרון אדום.

  3.   חוליו סזאר דיג'ו

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

    גיבוי PC
    http://backuppc.sourceforge.net/

    נכון לעכשיו העברנו כמעט את כל שרתי הגיבוי לפלטפורמה זו

  4.   KZKG ^ גאארה דיג'ו

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

  5.   חואקין דיג'ו

    כל כך טוב, תודה על השיתוף!

  6.   אדיאק 87 דיג'ו

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

    תודה על ההסבר הטוב.

    1.    ווקר דיג'ו

      ראשית עליך להחליט באיזה בסיס נתונים להשתמש, עיין בתיעוד הרשמי המלא למדי http://www.bacula.org/5.2.x-manuals/en/main/main/Installing_Bacula.html
      אני גם ממליץ לך להתקין עם מנהל החבילות של ההפצה שלך, למשל, באמצעות apt-get (כמו דביאן) תיצור לעצמך את הקטלוג, בעקבות כמה צעדים פשוטים מאוד.
      לתצורה תסתכל על http://www.bacula.org/5.2.x-manuals/en/main/main/Installing_Bacula.html מכיוון שקבצי התצורה כמעט הסתיימו, עליכם לשנות רק כמה דברים ובתיעוד ה- bacula הם אומרים לכם כיצד להתחיל להתקין אותו לאט לאט בכדי להבין את התהליך.
      הייתי רוצה לעשות מדריך, אבל מחר אני יוצא לחופשה ... אולי כשאחזור 🙂

  7.   ג'ון דיג'ו

    טוב מאוד ... זה עזר לי להתחיל עם צוות ...

  8.   גנים דיג'ו

    כלי נהדר !!! לא ידעתי את זה, למרות שיהיה צורך ללמוד אותו בזכוכית מגדלת, זה נראה מעניין ...

    ברכות!

  9.   גמונטנגרו דיג'ו

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

    1.    ווקר דיג'ו

      היי, כמובן שאפשר לאחסן את אמצעי האחסון בדיסק חיצוני, אך כדי לשחזר אותם אתה זקוק לגישה ל- bconsole, שכן כדי לשחזר קובץ אתה צריך לפענח את עוצמת הקול על פי הקטלוג.
      עם פקודת השחזור ניתנת לך סדרת שלבים לבחירת עוצמת הקול וכו '... ואז עץ הספריות ייבנה כך שתוכל לבחור ידנית את הקבצים. זה גם מאפשר לך לבחור את המכונה ואת הספרייה לאיפה לשחזר אותם (זה אפילו נותן לך אפשרות לשחזר למקור, להחליף נתונים, אם כי זה לא מומלץ).
      אני מקווה שזה עוזר http://www.bacula.org/en/dev-manual/main/main/Restore_Command.html

      1.    גמונטנגרו דיג'ו

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

        1.    ווקר דיג'ו

          העניין הוא שהדיסק החיצוני יהיה צריך להיות "רשום" כהתקן בתצורת הדמון של האחסון (קובץ bacula-sd.conf) כדי ש- bacula יוכל לראות אותו. ברגע שזה נעשה, אני לא חושב שיש לך בעיה גדולה ... למרות זאת הייתי עושה בדיקות למקרה שהקטלוג לא מוצא את עוצמת הקול. תן לי להסביר, כאשר אתה מעביר אמצעי אחסון "פיזית" (כלומר, אתה מעביר את הקובץ ממערכת ההפעלה שלך) הקטלוג לא יודע זאת, אז אתה צריך למחוק גם את עוצמת הקול מהקטלוג. אז בוודאי עליכם להוסיף אותו חזרה לקטלוג מאחר ונתיבו השתנה, ב- bconsole כתבו עזרה כדי לראות סיכום של הפקודות המטפלות בקטלוג.
          ישנם שני פתרונות פשוטים אם אינך רוצה להתעסק בקטלוג. הראשון הוא ש- bacula כותב ישירות לדיסק החיצוני, וכשנמאס לכם ממנו מוסיפים מכשיר חדש ב- bacula-sd.conf ושומרים את הדיסק במקום אחר; לכן כשאתה צריך לשחזר משהו נפחים אלה עדיין משתקפים ומוגדרים היטב בקטלוג. האפשרות השנייה היא לבצע שחזור לדיסק החיצוני, השומר את הקבצים ישירות לדיסק, ללא הצפנה או ארכיון או דחיסה או כל דבר אחר, כך שהם תמיד יהיו נגישים.

          1.    גמונטנגרו דיג'ו

            תודה רבה 🙂

          2.    ווקר דיג'ו

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

  10.   אנדי דיג'ו

    Bacula הוא משהו שאני תמיד מתחיל אבל אף פעם לא מסיים. זה עושה אותי עצום. אני צריך לנסות לתת לזה צ'אנס נוסף יום אחד, בגלל האפשרויות שהוא מציע.

  11.   BiteAciD דיג'ו

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

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

    לגבי

    1.    ווקר דיג'ו

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

  12.   ליאופולו דיג'ו

    ברצוני לקבל מידע.

  13.   ראש העיר דיג'ו

    שלום, צהריים טובים.

    תוכל לעזור לי בבקשה. התקנתי את bacula והוא פועל על השרתים שלי ומגבה ללא בעיות שאני יכול לשחזר. אבל השאלה שלי היא האם יש דרך לשמור את כל מערכת ההפעלה? כתמונה או כמשובט תודה מראש.

  14.   גוסטבו דיג'ו

    אהבתי מאוד את המאמר, ברור, פשוט, שלם ונעים לקריאה. השאלה שלי היא: מהי הגרסה והטעם של לינוקס שעליהם אתה ממליץ ביותר עבור בקולה? בברכה.

  15.   מאוריסיו טובאר דיג'ו

    יקר מאוד, המאמר עם כמה מדריכים שהצלחתי להתקין bacula ב- Centos 6.6, להתקין לקוח ב- Windows 7, שיש לו תקשורת עם הבמאי, להתקין גם את Webmin, מכיוון שבאמצעות זה אני מנהל את כל תצורות הלקוח והגיבוי.
    הכל בסדר עד שיהיה אבל בזמן הגיבוי, זה לא עובד, זה לא עושה כלום, אנא בקש קצת אור שיאיר אותי בכך שאני נכשל, תודה רבה מצ'ילה.

  16.   JesusJch דיג'ו

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

    ברכות ממקסיקו
    ישוע

  17.   רוברטו גווארה דיג'ו

    היי, אני מנסה ליישם את זה בין מספר שרתים, אבל אני לא יכול לאמת את המחסנים, אבל אני יכול לאמת את הלקוחות של אותם שרתים. מישהו יודע אם זה נושא גרסה? יש לי שרת עם גרסה 2.4, אחר עם 5.0 ו- baculumweb עם גרסה 9.0
    תודה