هر مهندس شبکه آن را میداند. اتوماسیون در راه است پایتون این روزها استاندارد واقعی برای عملیات شبکه خودکار است و دلیل خوبی هم دارد. به من بپیوندید تا انواع ابزارهای محبوب و مدرن پایتون را برای حل مشکلات واقعی کسب و کار بررسی کنیم.
آنچه خواهید آموخت:
بسیاری میخواهند شبکههای تولید خود را خودکار کنند اما به سادگی انجام نمیدهند. نمیدانم چگونه. در این دوره، Automating Networks with Python، دانش اساسی در مورد/توانایی غلبه بر این چالش را خواهید آموخت. ابتدا، نحوه جمعآوری اطلاعات و بهروزرسانی دستگاههای شبکه با استفاده از روشهای خط فرمان قدیمی SSH را خواهید آموخت. این شامل غواصی در ابزارهایی مانند Paramiko، Netmiko و NAPALM است. در مرحله بعد، نحوه نوشتن تجزیهکنندههای سفارشی برای اتوماسیون پیشرفتهتر مبتنی بر CLI را خواهید دید تا شامل تست واحد با pytest شود. در نهایت، نحوه استفاده از APIهای مدرن و فناوریهای پشتیبانی کننده آنها از جمله NETCONF، RESTCONF و YANG را بررسی خواهید کرد. پس از اتمام این دوره، مهارتها و دانش مدیریت شبکه خودکار مورد نیاز برای طراحی، پیادهسازی و حفظ زیرساختهای حرفهای به عنوان راهحلهای کد برای کسبوکارتان را خواهید داشت.
نمونه ویدیوی آموزشی ( زیرنویسها جدا از ویدیو است و میتوانید آنرا نمایش ندهید ) :
[ENGLISH]
01 Course Overview [2mins]
01-01 Course Overview [2mins]
02 Reorienting Python for Network Applications [30mins]
02-01 Things You Should Know Before Beginning [5mins]
02-02 Understanding Our MPLS Network [3mins]
02-03 Introducing the Python Paramiko Package [3mins]
02-04 Demo: Your First Paramiko Networking Script [9mins]
02-05 Challenge: Add Persistent Storage to the Existing Script [3mins]
02-06 Bonus Demo: The Python Debugger (pdb) [6mins]
02-07 Paramiko Summarized with Pseudo-Code [1mins]
03 Automating Networks with Paramiko and Netmiko [31mins]
03-01 What is Infrastructure as Code? [8mins]
03-02 Introducing Jinja2 for Text Templating [3mins]
03-03 Demo: Supplementary Infrastructure as Code Files [5mins]
03-04 Demo: Using Paramiko and Jinja2 for CLI-based IAC [3mins]
03-05 Why Do We Need Netmiko? [2mins]
03-06 Demo: Retooling Our Solution Using Netmiko [4mins]
03-07 Bonus Demo: Secure Copy Protocol (SCP) File Transfer Using Netmiko [4mins]
03-08 Comparing Paramiko and Netmiko [2mins]
04 Responsibly Parsing Text Using Python [24mins]
04-01 Introducing Python Regular Expressions [4mins]
04-02 Demo: Implementing Platform Model ID Parsers [4mins]
04-03 Demo: Implementing VRF Configuration Parsers [6mins]
04-04 What is Unit Testing? [1mins]
04-05 Demo: Using pytest for Model ID Parser Testing [5mins]
04-06 Demo: Using pytest for VRF Configuration Parser Testing [3mins]
04-07 Regex and Unit Testing in Summary [1mins]
05 Abstracting Network Automation Tasks with NAPALM [31mins]
05-01 Introducing NAPALM Simplify Mixed Networks [3mins]
05-02 Demo: NAPALM Getters and Basic Configuration Merging [7mins]
05-03 Introduction to Set Theory using Python [3mins]
05-04 Demo: Integrating Set Theory Logic [7mins]
05-05 Combining Set Theory with NAPALM [2mins]
05-06 Demo: Enhanced NAPALM Merging with Set Theory [5mins]
05-07 Other Handy NAPALM Features [2mins]
05-08 Visually Comparing Paramiko, Netmiko, and NAPALM [2mins]
06 Orchestrating Complex Processes with Nornir [32mins]
06-01 The Basic Nornir Architecture [5mins]
06-02 Demo: Developing the Simplest Nornir Runbook [6mins]
06-03 Bonus Demo: Exploring Nornir Results with pdb [4mins]
06-04 Demo: Optimizing Performance via Task Grouping for Concurrency [7mins]
06-05 Demo: Assembling the Final Nornir Runbook [8mins]
06-06 Bonus: Comparing Ansible and Nornir [2mins]
07 Advancing beyond SSH: Automating with APIs [48mins]
07-01 What Problem Does This Solve? [4mins]
07-02 Introduction to NETCONF Operations and YANG Data Models [4mins]
07-03 Demo: Introducing ncclient and the `get-config` RPC [5mins]
07-04 Demo: Managing MPLS RTs Using NETCONF via ncclient [8mins]
07-05 Demo: Storing VRF Configurations using NETCONF and Nornir [7mins]
07-06 Demo: Infrastructure as Code using NETCONF and Nornir [7mins]
07-07 HTTP-based RESTCONF Operations [3mins]
07-08 Demo: An alternative MPLS RT Solution Using RESTCONF and Nornir [9mins]
07-09 Comparing NETCONF and RETSCONF [1mins]
08 Writing Production-grade Python Code [27mins]
08-01 Why You Must Use Version Control [2mins]
08-02 Demo: Time Travel with Git [3mins]
08-03 Embedded Error-checking in Python [2mins]
08-04 Demo: Command Line Input and File Validation Techniques [3mins]
08-05 Beautifying Code with Formatters [1mins]
08-06 Demo: Uncompromising Uniformity with black [2mins]
08-07 Keeping Code Clean with Linters [1mins]
08-08 Demo: Deploying pylint To Reveal Simple Problems [4mins]
08-09 Writing Makefiles to Automate Shell Operations [1mins]
08-10 Demo: Saving Time with Makefiles [5mins]
08-11 Module Summary and Final Thoughts [3mins]
[فارسی]
01 بررسی اجمالی دوره [2 دقیقه]
01-01 بررسی اجمالی دوره [2 دقیقه]
02 تغییر جهت پایتون برای برنامههای شبکه [30 دقیقه]
02-01 چیزهایی که قبل از شروع باید بدانید [5 دقیقه]
02-02 درک شبکه MPLS ما [3 دقیقه]
02-03 معرفی بسته Python Paramiko [3 دقیقه]
02-04 نسخهی نمایشی- اولین اسکریپت شبکه پارامیکو شما [9 دقیقه]
02-05 چالش- افزودن فضای ذخیرهسازی دائمی به اسکریپت موجود [3 دقیقه]
02-06 نسخه نمایشی جایزه- اشکال زدای پایتون (PDB) [6 دقیقه]
02-07 پارامیکو خلاصه شده با کد شبه [1 دقیقه]
03 خودکارسازی شبکهها با Paramiko و Netmiko [31 دقیقه]
03-01 زیرساخت به عنوان کد چیست؟ [8 دقیقه]
03-02 معرفی Jinja2 برای قالببندی متن [3 دقیقه]
03-03 نسخهی نمایشی- زیرساخت تکمیلی به عنوان فایل کد [5 دقیقه]
03-04 نسخهی نمایشی- استفاده از Paramiko و Jinja2 برای IAC مبتنی بر CLI [3 دقیقه]
03-05 چرا ما به Netmiko نیاز داریم؟ [2 دقیقه]
03-06 نسخهی نمایشی- ابزار مجدد راه حل ما با استفاده از Netmiko [4 دقیقه]
03-07 نسخه نمایشی جایزه- انتقال فایل پروتکل کپی ایمن (SCP) با استفاده از Netmiko [4 دقیقه]
03-08 مقایسه پارامیکو و نتمیکو [2 دقیقه]
04 تجزیه مسئولانه متن با استفاده از پایتون [24 دقیقه]
04-01 معرفی عبارات منظم پایتون [4 دقیقه]
04-02 نسخهی نمایشی- پیادهسازی تجزیه کننده شناسه مدل پلتفرم [4 دقیقه]
04-03 نسخهی نمایشی- پیادهسازی تجزیه کنندههای پیکربندی VRF [6 دقیقه]
04-04 تست واحد چیست؟ [1 دقیقه]
04-05 نسخهی نمایشی- استفاده از pytest برای آزمایش تجزیه کننده شناسه مدل [5 دقیقه]
04-06 نسخهی نمایشی- استفاده از pytest برای آزمایش تجزیه کننده پیکربندی VRF [3 دقیقه]
04-07 Regex و تست واحد به طور خلاصه [1 دقیقه]
05 خلاصه کردن وظایف اتوماسیون شبکه با NAPALM [31 دقیقه]
05-01 معرفی NAPALM Simplify Mixed Networks [3 دقیقه]
05-02 نسخهی نمایشی- ادغام گیرندگان NAPALM و پیکربندی پایه [7 دقیقه]
05-03 مقدمهای بر نظریه مجموعهها با استفاده از پایتون [3 دقیقه]
05-04 نسخهی نمایشی- یکپارچهسازی منطق نظریه مجموعهها [7 دقیقه]
05-05 ترکیب تئوری مجموعهها با NAPALM [2 دقیقه]
05-06 نسخهی نمایشی- ادغام NAPALM پیشرفته با نظریه مجموعه [5 دقیقه]
05-07 سایر ویژگیهای مفید NAPALM [2 دقیقه]
05-08 مقایسه بصری Paramiko، Netmiko، و NAPALM [2 دقیقه]
06 ارکستراسیون فرآیندهای پیچیده با نورنیر [32 دقیقه]
06-01 معماری پایه نورنیر [5 دقیقه]
06-02 نسخهی نمایشی- توسعه سادهترین کتاب اجرا نورنیر [6 دقیقه]
06-03 نسخه نمایشی جایزه- کاوش نتایج نورنیر با پی دیبی [4 دقیقه]
06-04 نسخهی نمایشی- بهینهسازی عملکرد از طریق گروهبندی کار برای همزمانی [7 دقیقه]
06-05 نسخهی نمایشی- مونتاژ کتاب نهایی نورنیر [8 دقیقه]
06-06 امتیاز- مقایسه Ansible و Nornir [2 دقیقه]
07 پیشرفت فراتر از SSH- خودکارسازی با APIها [48 دقیقه]
07-01 این چه مشکلی را حل میکند؟ [4 دقیقه]
07-02 مقدمهای بر عملیات NETCONF و مدلهای داده YANG [4 دقیقه]
07-03 نسخهی نمایشی- معرفی ncclient و RPC `get-config` [5 دقیقه]
07-04 نسخهی نمایشی- مدیریت MPLS RT با استفاده از NETCONF از طریق ncclient [8 دقیقه]
07-05 نسخهی نمایشی- ذخیره تنظیمات VRF با استفاده از NETCONF و Nornir [7 دقیقه]
07-06 نسخهی نمایشی- زیرساخت به عنوان کد با استفاده از NETCONF و Nornir [7 دقیقه]
07-07 عملیات RESTCONF مبتنی بر HTTP [3 دقیقه]
07-08 نسخهی نمایشی- راه حل جایگزین MPLS RT با استفاده از RESTCONF و Nornir [9 دقیقه]
07-09 مقایسه NETCONF و RETSCONF [1 دقیقه]
08 نوشتن کد پایتون درجه تولید [27 دقیقه]
08-01 چرا باید از کنترل نسخه استفاده کنید [2 دقیقه]
08-02 نسخهی نمایشی- سفر در زمان با Git [3 دقیقه]
08-03 بررسی خطای جاسازی شده در پایتون [2 دقیقه]
08-04 نسخهی نمایشی- ورودی خط فرمان و تکنیکهای اعتبار سنجی فایل [3 دقیقه]
08-05 زیباسازی کد با قالبها [1 دقیقه]
08-06 نسخهی نمایشی- یکنواختی سازش ناپذیر با رنگ مشکی [2 دقیقه]
08-07 تمیز نگه داشتن کد با لنگرها [1 دقیقه]
08-08 نسخهی نمایشی- استقرار پیلینت برای آشکار کردن مشکلات ساده [4 دقیقه]
08-09 نوشتن فایلهای Makefiles برای خودکارسازی عملیات شل [1 دقیقه]
08-10 نسخهی نمایشی- صرفه جویی در زمان با Makefiles [5 دقیقه]
08-11 خلاصه ماژول و نظرات نهایی [3 دقیقه]
Nicholas (Nick) Russo، CCDE #20160041 و CCIE #42518، یک متخصص بین المللی شناخته شده در شبکه IP/MPLS و طراحی است. نیک برای رشد مهارتهای خود، تمرکز خود را بر پیشبرد توسعهدهندگان شبکه از طریق اتوماسیون برای مشتریان خود گذاشته است. اخیرا، نیک دانش خود را از طریق آموزش ویدیویی آنلاین و سخنرانی در کنفرانسهای صنعتی به اشتراک گذاشته است. نیک همچنین دارای مدرک لیسانس علوم کامپیوتر از موسسه فناوری روچستر (RIT) است. نیک با همسرش کارلا و دخترش اولیویا در مریلند آمریکا زندگی میکند.