CISCO-logo

CISCO CSR 1000v ved hjælp af brugerdefinerede data

CISCO-CSR-1000v-Using-Custom-Data-product

Implementering af en Cisco CSR 1000v VM ved hjælp af brugerdefinerede data

Når du implementerer en Cisco CSR 1000v Virtual Machine-instans på Google Cloud Platform, kan du eventuelt vælge at bruge afsnittet Startup Script på VM-oprettelseskonsollen til at levere tilpassede data. Du kan også bruge CLI til at få adgang til de tilpassede data for at opnå forskellige automatiseringsmål. De tilpassede data i GCP giver dig mulighed for at køre Cisco IOS XE-konfigurationskommandoer, installere Python-pakker i guesthell på Day0, køre scripts i guesthell på Day0 og give licensoplysninger til at starte CSR 1000v-instansen med en ønsket teknologipakke.

Udgivelser understøttet
Du kan kun implementere en Cisco CSR 1000v VM ved hjælp af tilpassede data på Cisco IOS XE Gibraltar 16.12.1 eller nyere udgivelser.

  • Redigering af brugerdefinerede data,
  • Adgang til brugerdefinerede data,
  • Bekræftelse af den tilpassede datakonfiguration,

Redigering af brugerdefinerede data

For at redigere de tilpassede data skal du konfigurere følgende egenskaber:

  • IOS konfiguration
  • Scripts
  • Script-legitimationsoplysninger
  • Python-pakke
  • Licensering

Du kan placere ejendommene i en file i enhver rækkefølge. Følgende egenskabsbeskrivelser angiver afhængigheder mellem egenskaberne, hvis nogen. Se exampden bootstrap files på: https://github.com/csr1000v/customdata-examples.

Efter at have defineret egenskaberne for tilpassede data, kan du få adgang til opstartsscriptet eller de tilpassede data file ved at bruge CLI som beskrevet i afsnittet Adgang til brugerdefinerede data.

Konfiguration af IOS-konfigurationsegenskaben

Hvis du ønsker at bootstrap IOS-konfigurationen på Dag0, konfigurer IOS-konfigurationsegenskaben. Se følgende IOS-konfiguration f.eksampdet:

  • Afsnit: IOS-konfiguration
  • værtsnavn CSR1
  • grænseflade GigabitEthernet1
  • beskrivelse "statisk IP-adressekonfiguration"
  • IP-adresse 10.0.0.1 255.255.255.0
  • grænseflade GigabitEthernet2
  • beskrivelse "DHCP-baseret IP-adressekonfiguration"
  • ip-adresse dhcp

Efter den første linje, der lyder Sektion: IOS-konfiguration, kan du indtaste en liste over Cisco IOS XE-konfigurationskommandoer, som du vil udføre, på Cisco CSR 1000v-routeren.
Når du kører denne kommando, anvendes den foregående IOS-konfiguration på CSR 1000v-routeren, der kører på GCP, på dag 0.

Konfiguration af scriptegenskaben

Scripts-egenskab hjælper dig med at automatisere implementeringen af ​​din CSR1000v-instans. Hvis du vil køre et Python- eller et Bash-script på Day0 under guesthell-konteksten, skal du give offentligheden URL og argumenter for python- eller bash-scriptet i Scripts-egenskaben. Et script skal indeholde et stykke kode, der indeholder shebang (!)-tegnet i den første linje af scriptet. Denne linje fortæller Cisco IOS-XE, hvilken scriptfortolker (Python eller Bash) du skal bruge til at parse scriptkoden. F.eksample, den første linje i et Python-script kan indeholde #!/usr/bin/env-python, mens den første linje i et Bash-script kan indeholde #!/bin/bash. Denne linje tillader Python- eller Bash-scriptet at køre som eksekverbar kode i et Linux-miljø. Når du udfører scriptet, kører scriptet i gæsteskal-beholderen i Cisco CSR 1000v-forekomsten. For at få adgang til guesthell-beholderen skal du bruge kommandoen guestshell EXEC mode. For mere information om guesthell-kommandoen, se Programmerbarhedskonfigurationsvejledningen. For at konfigurere egenskaben Scripts skal du bruge følgende format:
Afsnit: scripts
offentlig_url
I dette script skal den første linje i egenskaben læse Sektion: Scripts. I den anden linje af ejendommen skal du indtaste URL af manuskriptet og manuskriptets argumenter. Scriptet kan enten være et Python- eller et Bash-script. Scriptet køres i guesthell i den første opstart, når du uploader de tilpassede data file, når du opretter CSR1000v-forekomsten. Til view mere examples af scripts, se "scripts" på: https://github.com/csr1000v/customdata-examples. Se også følgende examples:
Example 1
Afsnit: Script
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
Afsnit: Scripts
ftp://10.11.0.4/dir1/dir2/script.py -a arg1 -s arg2
Disse to linjer i Script-egenskaben henter script.pyscript fra FTP-serveren med IP-adressen 10.11.0.4 og kører scriptet med kommandoen ./script.py -a arg1 -s arg2 Bash i gæsteskal-beholderen i Cisco. CSR 1000v-instans ved hjælp af argumenterne arg1 og arg2.

Note Hvis et script i Scripts-egenskaben kræver en Python-pakke, der ikke er inkluderet i standard CentOS Linux-udgivelsen (den CentOS Linux-udgivelse, der i øjeblikket bruges af guesthell, er CentOS Linux-version 7.1.1503), skal du inkludere oplysninger om Python-pakken i Python-pakkeegenskaben. For mere information, se: Konfiguration af Python-pakkens egenskab, Før du får adgang til de brugerdefinerede data og kører Bash- eller Python-scriptet, anbefaler Cisco, at du tester
URL som du har til hensigt at bruge ved hjælp af egenskaben Scripts. Du kan teste ftp://10.11.0.4/dir1/dir2/script.py -a arg1 -s arg2 ved først at køre c.url softwareværktøj til at downloade scriptet file. I gæsteskallet skal du indtaste curl kommando som vist i følgende example: curl -m 30 –gentag 5 –bruger brugernavn:adgangskode ftp://10.11.0.4/dir1/dir2/script_needs_credentials.py. Hvis curl kommandoen er vellykket, downloades en kopi af Python-scriptet, som verificerer, om URL er korrekt.

Konfiguration af egenskaben for scriptlegitimationsoplysninger

Hvis du har angivet en FTP-server i Script-egenskaben, og serveren kræver et brugernavn og adgangskode-legitimationsoplysninger, skal du angive legitimationsoplysningerne ved hjælp af egenskaben Script-legitimationsoplysninger.

Note Hvis du kan få adgang til FTP-serveren anonymt, behøver du ikke bruge egenskaben Script-legitimationsoplysninger. Konfigurer egenskaben Scripts med en URL og parametre, der matcher dem i egenskaben Script-legitimationsoplysninger. For at konfigurere egenskaben Script-legitimationsoplysninger skal du bruge følgende format: Sektion: Script-legitimationsoplysninger public_url
Example
Sektion: Script-legitimationsoplysninger
ftp://10.11.0.4/dir1/dir2/script1.py userfoo foospass Den anden linje i egenskaben Script credentials specificerer værdierne for brugernavnet (userfoo) og adgangskoden (foospass) for python-scriptet script1.py. Inkluder navnet på den FTP-server, der også er i egenskaben Scripts. En eksamplinjen i Scripts-egenskaben er: ftp://10.11.0.4/dir1/dir2/script1.py -a arg1 -s arg2. Se exampafsnit 2 i Konfiguration af scriptegenskaben,

Konfiguration af Python-pakken Egenskab

Hvis en Python-pakke kræves af et script i Scripts-egenskaben, og den ikke er en del af standard CentOS Linux-udgivelsen 7.1.1503, skal du inkludere oplysninger om pakken i Python-pakkeegenskaben. Ved at inkludere Python-pakkeegenskaben i bootstrap file, sikrer du dig, at Cisco CSR 1000v downloader og installerer den nødvendige Python-pakke før de tilpassede data file som du har angivet i egenskaben Scripts.
Konfigurer Python Package Property
For at konfigurere Python-pakkeegenskaben skal du bruge følgende format:
Sektion: Python-pakke
pakkenavn [ version ] [ sudo ] { [ pip_arg1 [ ..[ pip_arg9] ] ] } Argumenterne: version, sudo og pip_arg1 til pip_arg9 er valgfrie. Du skal placere argumenterne til pip-kommandoen mellem "{" og "}" klammeparenteser. Hvis du angiver versionsargumentet, downloades et specifikt versionsnummer. Hvis du angiver sudo-argumentet, downloades pakken som en sudo-bruger. Konfiguration Eksamples
Example 1
Sektion: Python-pakke
nclient 0.5.2
I dette example, den anden linje i Python-pakkeegenskaben angiver, at pakkenavnet er "ncclient", og versionen er "0.5.2". Når bootstrap file er uploadet, er version 0.5.2 af ncclient-pakken installeret i guesthell-containeren på Cisco CSR 1000v.
Example 2
Sektion: Python-pakke
csr_gcp_ha 3.0.0 sudo {–user} I dette example, den anden linje i Python-pakkeegenskaben angiver, at pakkenavnet er "csr_gcp_ha", og versionen er "3.0.0". Når bootstrap file er uploadet, er version 3.0.0 af csr_gcp_ha-pakken installeret i gæsteskal-containeren på Cisco CSR 1000v. Følgende kommando udføres som sudo-bruger: pip install csr_gcp_ha=3.0.0 –user.

Konfiguration af licensegenskaben

Konfigurer licensegenskaben til at angive licensteknologiniveauet for Cisco CSR 1000v-instansen.

  • Indtast den første linje af ejendommen i formatet: Sektion: Licens.
  • Indtast den anden linje i egenskaben, som angiver licensens tekniske niveau, ved at bruge følgende format: TechPackage:tech_level .

Note  Sørg for, at der ikke er mellemrum mellem "TechPackage:" og tech_level. De mulige tech_level-værdier inkluderer: ax, security, appx eller ipbase.
Sørg for, at tech_level er med små bogstaver.

Konfiguration Eksample
Afsnit: Licens TechPackage:sikkerhed

Adgang til brugerdefinerede data

  • For at køre de tilpassede data som en file ved at bruge CLI, udfør følgende script: Adgang til brugerdefinerede data file ved hjælp af CLI
  • For at køre de tilpassede data som en file ved at bruge CLI, udfør følgende script: gcloud compute instanser oprette –metadata-fra-file=startup-script=Customdata.txt –billede
  • Når du udfører denne kommando, oprettes en Cisco CSR 1000v VM. Routeren konfigureres ved hjælp af kommandoerne i file: "Customdata.txt".
    Adgang til de tilpassede data fra konsollen Log ind på GCP-konsollen for at få adgang til de tilpassede data fra konsollen. Klik på Compute Engine, og vælg Opret en instans. På skærmen Ny VM-instans skal du klikke på Management > Startup Script.

CISCO-CSR-1000v-Using-Custom-Data-fig-1

Bekræftelse af den brugerdefinerede datakonfiguration

Når du har kørt det brugerdefinerede datascript, oprettes VM'en, og konfigurationskommandoerne udføres. For at bekræfte det samme skal du bruge følgende kommandoer og scripts:

  • vis version: Indtast kommandoen show version i Cisco IOS XE CLI på CSR 1000v for at afgøre, om licensegenskaben fungerede. F.eksample, viser outputtet en reference til sikkerhedslicensen.
  • For at se, om der opstod fejl efter at have kørt kommandoer i script-egenskaben, skal du se på customdata.log file i /bootflash/ /vejviser. Scriptname.log file gemmer ethvert output, der sendes til STDOUT af scriptet.
  • For at kontrollere, om Python-egenskaben fungerede, skal du indtaste pip freeze | grep kommando fra Guestshell til view de aktuelt installerede Python-pakker. Pakkenavn refererer her til den pakke, du specifikt søger efter.
  • For at bekræfte Cisco IOS XE-kommandoerne i egenskaben IOS Configuration skal du køre kommandoen show running-configuration.

Dokumenter/ressourcer

CISCO CSR 1000v ved hjælp af brugerdefinerede data [pdfBrugermanual
CSR 1000v Brug af brugerdefinerede data, CSR 1000v, Brug af brugerdefinerede data, brugerdefinerede data, data

Referencer

Efterlad en kommentar

Din e-mailadresse vil ikke blive offentliggjort. Påkrævede felter er markeret *