PracticU

פייתון ו-NETCONF

בלי כתוביותעם כתוביות
PracticU › קורס CCNA - הסמכה בינלאומית של סיסקו - מבחן 200-301 › פייתון ו-NETCONF
מילון מושגים:
XML - שפת סימון לייצוג נתונים מובְנים בעזרת תגיות, המשמשת להחלפת מידע בין מערכות ולקובצי הגדרות.
Git - מערכת מבוזרת לניהול גרסאות של קוד, שעוקבת אחר שינויים ומאפשרת עבודה משותפת בענפים.
Bash - מעטפת שורת פקודה נפוצה במערכות Linux, המשמשת להרצת פקודות ולכתיבת סקריפטים.
שם משתמש - מזהה ייחודי שמשתמש מזין כדי להזדהות במערכת, לרוב יחד עם סיסמה.
סשן - פרק זמן של פעילות רציפה בין משתמש למערכת, שבו נשמר מידע על מצבו, למשל לאחר התחברות לאתר.
DOM - ייצוג עץ של מבנה דף HTML בזיכרון, שמאפשר לקוד לקרוא ולשנות את תוכן הדף ומבנהו.
RPC - מנגנון שמאפשר לתוכנית לקרוא לפונקציה שרצה במחשב אחר ברשת כאילו היא מקומית.
Python - שפת תכנות עילית וקריאה, נפוצה בפיתוח, אוטומציה, ניתוח נתונים ולמידת מכונה.

פייתון ו-NETCONF
במקום לכתוב XML ידנית, מדברים עם הנתב ב-NETCONF מתוך פייתון בעזרת ספריית ncclient. ההרצאה מדגימה זאת קודם פקודה אחר פקודה במצב אינטראקטיבי, ואחר כך בסקריפט שמושך את הממשקים של הנתב.
השלבים
1. הכנות: נכנסים ל-Sandbox של סיסקו (מעבדת IOS XE Always-On) ולמעבדת הלמידה של NETCONF, ועוברים את שלב "Set up your computer". הדבר החשוב ביותר הוא לעבוד בתוך הסביבה הווירטואלית של פייתון. ה-Git Bash הרגיל אינו בסביבה כזו, ולכן נכנסים לתיקייה ומפעילים אותה בשתי הפקודות מהמעבדה.
2. פייתון אינטראקטיבי: נכנסים לתיקיית intro-mdp/netconf ומריצים פייתון עם -i על prep.py. הוא מבצע ייבוא של environment_lab, שבו נמצא האובייקט עם פרטי ההתחברות (ios_xe_1: שרת, פורט, שם משתמש וסיסמה), וכך אפשר להדפיס אותם.
3. חיבור: מייבאים את manager מתוך ncclient, מתחברים עם הערכים מהאובייקט, ומדפיסים בלולאה את server_capabilities. זה אותו Hello שמוצג קודם, רק בלי XML ידני. בסוף סוגרים את הסשן ויוצאים.
4. סקריפט מוכן: אפשר להריץ את הפקודות בבת אחת מקובץ. הסקריפט מגדיר פילטר שמחזיר רק ממשקים, מתחבר ושולח get_config על ה-running config עם הפילטר.
5. הצגה קריאה: התשובה (NetconfReply) מומרת ל-XML מסודר בעזרת xml.dom.minidom ומודפסת כגולמית.
6. מילון: אותה תשובה מומרת בעזרת xmltodict למילון, נכנסים ל-rpc-reply ול-data ל-interfaces, ובלולאה מדפיסים שם וסטטוס (enabled) של כל ממשק.
7. הרצה: מריצים את הסקריפט הסופי עם python ושם הקובץ, בלי -i, ובפלט רואים את הממשק GigabitEthernet1 עם enabled אמת, ולצדו את ה-XML הגולמי.
הבחירה בין מצב אינטראקטיבי לסקריפט: במצב אינטראקטיבי בודקים שורה אחר שורה, ובסקריפט מריצים הכל במכה אחת.
אחרי ההרצאה אפשר להתחבר מפייתון לנתב דרך NETCONF ולהדפיס את הממשקים שלו בשתי צורות.
השיעור הבא בקורס: סקריפט פייתון ל-NETCONF

פרקי ההרצאה: פייתון ו-NETCONF

  1. 00:00

    עבודה עם NETCONF דרך פייתון

  2. 01:01

    בחירת מעבדת programmability

  3. 01:59

    וידוא ה-virtual environment

  4. 02:55

    הפעלת פייתון אינטראקטיבי

  5. 03:48

    הדפסת משתנה מ-prep.py

  6. 05:00

    קובץ environment lab

  7. 06:03

    ייבוא ספריית ncclient

  8. 07:05

    התחברות לשרת עם manager

תמלול ההרצאה: פייתון ו-NETCONF

הטקסט המלא של הדקות הראשונות בהרצאה «פייתון ו-NETCONF» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

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

  2. 00:28

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

  3. 00:54

    סנדבוקס קטלוג אני כל פעם מראה לכם איך אני נכנס עובר תהליך של זיהוי זה הכל בחינם לא צריך כרטיסי אשראי לא צריך כלום מסנן את המעבדות של נטוורקינג בלבד אני לא צריך שרתים לוחץ קונטרול F ומחפש פרוגרמביליטי פרוגרמביליטי הנה פרוגרמביליטי שני אמים הנה זה כל הפרוגרמביליטי ואני מחפש את זאתי של always on שתמיד דלוקה נכנס אליה אני בתוך המעבדה של recommended code מבוססת

  4. 01:28

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

  5. 01:59

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

  6. 02:30

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

  7. 02:52

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

  8. 03:15

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

  9. 03:44

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

  10. 03:59

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

  11. 04:21

    דרך אגב, אתם רוצים לראות איפה ה-prep הזה נמצא, מאיפה הבאנו אותו? בואו נראה מה קורה בתוכו. נלך לתיקייה שלנו, זאת התיקייה שהורדנו. יש לנו פה intro mdp, נטקונף, הרצנו את ה-prep py הזה, נכון?

  12. 04:40

    זה מה שהרצנו, היינו בתוך התיקייה הזאת, שימו לב, היינו בתוך התיקייה intro mdp, קונף והרצנו את הפרפ py נכון שזה זה בוא נפתח אותו ברגע שפתחנו אותו אנחנו רואים פה סקריפט רצף של פקודות בפייתון ואחרונה אימפורט ל environment lab איפה נמצא environment lab הזה בוא אני אראה לכם אותו בוא נקרא מה כתוב

  13. 05:06

    בתוך environment lab הוא בתיקיית השורש environment lab נקודה פייתון אני עושה edit ופה אני כבר רואה את המשתנה בשם ios xe 1 עם כל פרטי ההתחברות וזה בעצם מה שהדפסנו פה בפקודה אתם זוכרים environment lab.ios xe 1 זאת אומרת ה-prep py עשה אימפורט ל-environment lab py ו-environment py עשה לי בעצם את המשתנה ios xe למעשה הוא בנה לי אובייקט כשאתם רואים סוגריים מסולסלות תדעו

  14. 05:44

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

  15. 06:14

    שעשינו לו התקנה אני אזכיר לכם מי ששכח שהתקנו אותו כשהכנו את המחשב שלנו. אנחנו, אחד השלבים של ההתקנה היה להתקין את ה-requirements עם PIP install, והתקנו את ה-NCC Client הזה, את הספריית עזר הזאת.

  16. 06:37

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

  17. 06:51

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

  18. 07:05

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

  19. 07:18

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

לקורס המלא: קורס CCNA אונליין בעברית

ההרצאה הקודמת: הדגמה של NETCONF

ההרצאה הבאה: סקריפט פייתון ל-NETCONF

הרצאות קשורות מקורסים אחרים

  • התקנה של פייתון
  • התקנת פייתון בוונדוס

קורסים נוספים במסלול

  • קורס CCNP
  • קורס פורטיגייט - FortiGate
  • קורס צ'ק פוינט - Check Point Gaia R81