CISCO CSR 1000v با استفاده از داده های سفارشی
استقرار سیسکو CSR 1000v VM با استفاده از داده های سفارشی
وقتی یک نمونه ماشین مجازی Cisco CSR 1000v را در Google Cloud Platform استقرار میدهید، میتوانید به صورت اختیاری از بخش Startup Script در کنسول ایجاد VM برای ارائه دادههای سفارشی استفاده کنید. همچنین می توانید از CLI برای دسترسی به داده های سفارشی برای دستیابی به اهداف مختلف اتوماسیون استفاده کنید. دادههای سفارشی در GCP به شما امکان میدهد دستورات پیکربندی Cisco IOS XE را اجرا کنید، بستههای Python را در مهمانهل در Day0 نصب کنید، اسکریپتها را در مهمانهل در Day0 اجرا کنید، و اطلاعات مجوز را برای راهاندازی نمونه CSR 1000v با یک بسته فناوری مورد نظر ارائه دهید.
نسخه های پشتیبانی شده
شما می توانید یک سیسکو CSR 1000v VM را با استفاده از داده های سفارشی فقط در Cisco IOS XE Gibraltar 16.12.1 یا نسخه های جدیدتر نصب کنید.
- ویرایش داده های سفارشی،
- دسترسی به داده های سفارشی،
- تأیید پیکربندی داده های سفارشی،
ویرایش داده های سفارشی
برای ویرایش داده های سفارشی، ویژگی های زیر را پیکربندی کنید:
- پیکربندی IOS
- اسکریپت ها
- اعتبار اسکریپت
- بسته پایتون
- صدور مجوز
شما می توانید خواص را در یک قرار دهید file به هر ترتیب توضیحات دارایی زیر وابستگی بین خواص را در صورت وجود مشخص می کند. سابق را ببینیدampبوت استرپ fileدر: https://github.com/csr1000v/customdata-examples.
پس از تعریف ویژگی های داده های سفارشی، می توانید به اسکریپت راه اندازی یا داده های سفارشی دسترسی داشته باشید file با استفاده از CLI همانطور که در بخش دسترسی به داده های سفارشی توضیح داده شده است.
پیکربندی ویژگی پیکربندی IOS
اگر می خواهید پیکربندی IOS را در Day0 بوت استرپ کنید، ویژگی IOS Configuration را پیکربندی کنید. تنظیمات IOS زیر را ببینیدampدر:
- بخش: پیکربندی IOS
- نام میزبان CSR1
- رابط GigabitEthernet1
- توضیح "پیکربندی آدرس IP استاتیک"
- آدرس IP 10.0.0.1 255.255.255.0
- رابط GigabitEthernet2
- توضیحات "پیکربندی آدرس IP مبتنی بر DHCP"
- آدرس آی پی dhcp
بعد از اولین سطر که بخش را می خواند: در پیکربندی IOS، میتوانید فهرستی از دستورات پیکربندی Cisco IOS XE را که میخواهید اجرا کنید، در روتر Cisco CSR 1000v وارد کنید.
هنگامی که این دستور را اجرا می کنید، پیکربندی قبلی IOS روی روتر CSR 1000v که در روز 0 روی GCP اجرا می شود، اعمال می شود.
پیکربندی ویژگی اسکریپت ها
ویژگی Scripts به شما کمک می کند تا استقرار نمونه CSR1000v خود را خودکار کنید. اگر میخواهید یک اسکریپت پایتون یا Bash را در Day0 در زمینه مهمانپوش اجرا کنید، آن را عمومی کنید. URL و آرگومان های پایتون یا اسکریپت bash در ویژگی Scripts. یک اسکریپت باید شامل یک قطعه کد باشد که شامل کاراکتر shebang (!) در خط اول اسکریپت باشد. این خط به Cisco IOS-XE میگوید از کدام مفسر اسکریپت (پایتون یا Bash) برای تجزیه کد اسکریپت باید استفاده کنید. برای مثالample، اولین خط یک اسکریپت پایتون میتواند حاوی #!/usr/bin/env پایتون باشد، در حالی که خط اول یک اسکریپت Bash میتواند حاوی #!/bin/bash باشد. این خط به پایتون یا اسکریپت Bash اجازه می دهد تا به عنوان کد اجرایی در یک محیط لینوکس اجرا شود. هنگامی که اسکریپت را اجرا می کنید، اسکریپت در ظرف مهمانی نمونه Cisco CSR 1000v اجرا می شود. برای دسترسی به کانتینر مهمانشل، از دستور حالت مهمانشل EXEC استفاده کنید. برای اطلاعات بیشتر در مورد دستور مهمانشل، راهنمای پیکربندی برنامهپذیری را ببینید. برای پیکربندی ویژگی Scripts، از فرمت زیر استفاده کنید:
بخش: اسکریپت ها
عمومی_url
در این اسکریپت، خط اول ویژگی باید قسمت: Scripts را خوانده شود. در خط دوم ملک، عبارت را وارد کنید URL از فیلمنامه و استدلال های فیلمنامه. این اسکریپت می تواند یک اسکریپت پایتون یا یک اسکریپت Bash باشد. هنگامی که داده های سفارشی را آپلود می کنید، اسکریپت در اولین بوت در guestshell اجرا می شود file، هنگامی که نمونه CSR1000v را ایجاد می کنید. به view بیشتر سابقampبخشهای اسکریپتها، به «اسکریپتها» در: https://github.com/csr1000v/customdata-examples. همچنین به مثال زیر مراجعه کنیدampموارد:
Example 1
بخش: اسکریپت
https://raw.githubusercontent.com/csr1000v/customdata-examples/master/scripts/smartLicensingConfigurator.py–idtoken”<token_string>”–throughput The two lines in the scripts property retrieve the smartLicensingConfigurator.py script from the custom data-examples repository at the specified URL. The script runs in the guestshell container of the Cisco CSR 1000v with the arguments idtoken and throughput.
Example 2
بخش: اسکریپت ها
ftp://10.11.0.4/dir1/dir2/script.py -a arg1 -s arg2
این دو خط در ویژگی Scripts script.pyscript را از سرور FTP با آدرس IP 10.11.0.4 بازیابی می کنند و اسکریپت را با دستور ./script.py -a arg1 -s arg2 Bash در ظرف مهمان سیسکو اجرا می کنند. نمونه CSR 1000v با استفاده از آرگومانهای arg1 و arg2.
توجه داشته باشید اگر یک اسکریپت در ویژگی Scripts به یک بسته پایتون نیاز دارد که در نسخه استاندارد لینوکس CentOS گنجانده نشده است (نسخه لینوکس CentOS که در حال حاضر توسط guesthell استفاده میشود نسخه 7.1.1503 CentOS Linux است)، باید اطلاعاتی درباره بسته Python اضافه کنید. در ویژگی بسته Python. برای اطلاعات بیشتر، نگاه کنید به: پیکربندی ویژگی بسته Python، قبل از اینکه به داده های سفارشی دسترسی داشته باشید و اسکریپت Bash یا Python را اجرا کنید، سیسکو توصیه می کند که
URL که قصد دارید با استفاده از ویژگی Scripts استفاده کنید. میتوانید ftp://10.11.0.4/dir1/dir2/script.py -a arg1 -s arg2 را با اجرای curl ابزار نرم افزاری برای دانلود اسکریپت file. در مهمانخانه، c را وارد کنیدurl دستور همانطور که در مثال زیر نشان داده شده استample: جurl -m 30 – دوباره امتحان کنید 5 – نام کاربری: رمز عبور ftp://10.11.0.4/dir1/dir2/script_needs_credentials.py. اگر جurl دستور موفقیت آمیز است، یک کپی از اسکریپت پایتون دانلود می شود، که تأیید می کند که آیا URL درست است.
پیکربندی ویژگی اعتبارنامه اسکریپت
اگر یک سرور FTP را در ویژگی Script مشخص کرده اید و سرور به نام کاربری و اعتبار رمز عبور نیاز دارد، با استفاده از ویژگی Script credentials اعتبارنامه را مشخص کنید.
توجه داشته باشید اگر می توانید به صورت ناشناس به سرور FTP دسترسی داشته باشید، نیازی به استفاده از ویژگی Script credentials ندارید. ویژگی Scripts را با a پیکربندی کنید URL و پارامترهایی که با پارامترهای موجود در ویژگی اعتبارنامه Script مطابقت دارند. برای پیکربندی ویژگی Script credentials، از فرمت زیر استفاده کنید: بخش: اعتبارنامه اسکریپت public_url
Example
بخش: اعتبار اسکریپت
ftp://10.11.0.4/dir1/dir2/script1.py userfoo foospass خط دوم در ویژگی Script credentials مقادیر اعتبار نام کاربری (userfoo) و رمز عبور (foospass) را برای python script script1.py مشخص می کند. نام سرور FTP را که در ویژگی Scripts نیز وجود دارد، وارد کنید. یک سابقampخط le در ویژگی Scripts این است: ftp://10.11.0.4/dir1/dir2/script1.py -a arg1 -s arg2. رجوع به سابق شودample 2 در پیکربندی ویژگی اسکریپت ها،
پیکربندی ویژگی بسته Python
اگر یک بسته Python توسط یک اسکریپت در ویژگی Scripts مورد نیاز است و بخشی از نسخه استاندارد CentOS Linux نسخه 7.1.1503 نیست، باید اطلاعات مربوط به بسته را در ویژگی بسته Python قرار دهید. با قرار دادن ویژگی بسته Python در بوت استرپ file، مطمئن می شوید که Cisco CSR 1000v بسته Python مورد نیاز را قبل از داده های سفارشی دانلود و نصب می کند. file که در ویژگی Scripts مشخص کرده اید.
ویژگی بسته Python را پیکربندی کنید
برای پیکربندی ویژگی بسته Python، از فرمت زیر استفاده کنید:
بخش: بسته پایتون
package_name [ نسخه ] [ sudo ] { [ pip_arg1 [ ..[ pip_arg9] ] } آرگومان های: version، sudo و pip_arg1 به pip_arg9 اختیاری هستند. شما باید آرگومان های دستور pip را بین پرانتزهای "{" و "} قرار دهید. اگر آرگومان نسخه را مشخص کنید، شماره نسخه خاصی دانلود می شود. اگر آرگومان sudo را مشخص کنید، بسته به عنوان کاربر sudo دانلود می شود. پیکربندی مثالamples
Example 1
بخش: بسته پایتون
ncclient 0.5.2
در این سابقample، خط دوم ویژگی بسته Python مشخص می کند که package_name "ncclient" و نسخه "0.5.2" است. وقتی بوت استرپ file آپلود شده است، نسخه 0.5.2 بسته ncclient در ظرف مهمانی سیسکو CSR 1000v نصب شده است.
Example 2
بخش: بسته پایتون
csr_gcp_ha 3.0.0 sudo {–user} در این سابقample، خط دوم ویژگی بسته Python مشخص می کند که package_name "csr_gcp_ha" و نسخه "3.0.0" است. وقتی بوت استرپ file آپلود شده است، نسخه 3.0.0 بسته csr_gcp_ha در ظرف مهمانی سیسکو CSR 1000v نصب شده است. دستور زیر به عنوان کاربر sudo اجرا می شود: pip install csr_gcp_ha=3.0.0 –user.
پیکربندی ویژگی License
ویژگی مجوز را برای تعیین سطح فناوری مجوز برای نمونه Cisco CSR 1000v پیکربندی کنید.
- خط اول ملک را با فرمت وارد کنید: بخش: مجوز.
- خط دوم ویژگی را که سطح فنی مجوز را مشخص می کند، با فرمت زیر وارد کنید: TechPackage:tech_level .
توجه داشته باشید اطمینان حاصل کنید که هیچ فاصله ای بین "TechPackage:" و tech_level وجود ندارد. مقادیر ممکن tech_level عبارتند از: ax، security، appx یا ipbase.
اطمینان حاصل کنید که tech_level با حروف کوچک است.
پیکربندی مثالample
بخش: License TechPackage: Security
دسترسی به داده های سفارشی
- برای اجرای داده های سفارشی به صورت a file با استفاده از CLI، اسکریپت زیر را اجرا کنید: دسترسی به داده های سفارشی file با استفاده از CLI
- برای اجرای داده های سفارشی به صورت a file با استفاده از CLI، اسکریپت زیر را اجرا کنید: gcloud compute instances create فراداده-از-file=startup-script=Customdata.txt –image
- هنگامی که این دستور را اجرا می کنید، یک ماشین مجازی سیسکو CSR 1000v ایجاد می شود. روتر با استفاده از دستورات در پیکربندی شده است file: "Customdata.txt".
دسترسی به داده های سفارشی از کنسول برای دسترسی به داده های سفارشی از کنسول، وارد کنسول GCP شوید. روی Compute Engine کلیک کرده و Create an Instance را انتخاب کنید. در صفحه نمونه VM جدید، روی Management > Startup Script کلیک کنید.
تأیید پیکربندی داده های سفارشی
پس از اجرای اسکریپت داده های سفارشی، VM ایجاد می شود و دستورات پیکربندی اجرا می شوند. برای تایید همین موضوع، از دستورات و اسکریپت های زیر استفاده کنید:
- show version: برای کمک به تعیین اینکه آیا ویژگی مجوز کار می کند یا خیر، در Cisco IOS XE CLI روی CSR 1000v، دستور show version را وارد کنید. برای مثالample، خروجی یک مرجع به مجوز امنیتی را نشان می دهد.
- برای مشاهده اینکه آیا پس از اجرای دستورات در ویژگی scripts خطاهایی رخ داده است، به customdata.log نگاه کنید file در /bootflash/ /فهرست راهنما. نام اسکریپت.log file هر خروجی که توسط اسکریپت به STDOUT ارسال می شود را ذخیره می کند.
- برای بررسی اینکه آیا خاصیت پایتون کار می کند یا خیر، پیپ freeze | را وارد کنید grep دستور از Guestshell به view بسته های پایتون نصب شده در حال حاضر در اینجا، package-name به بسته ای اشاره دارد که شما به طور خاص به دنبال آن هستید.
- برای تأیید دستورات Cisco IOS XE در ویژگی IOS Configuration، دستور show running-configuration را اجرا کنید.
اسناد / منابع
![]() |
CISCO CSR 1000v با استفاده از داده های سفارشی [pdf] دفترچه راهنمای کاربر CSR 1000v با استفاده از داده های سفارشی، CSR 1000v، استفاده از داده های سفارشی، داده های سفارشی، داده ها |