CISCO CSR 1000v bruker tilpassede data
Distribuere en Cisco CSR 1000v VM ved å bruke tilpassede data
Når du distribuerer en Cisco CSR 1000v Virtual Machine-forekomst på Google Cloud Platform, kan du eventuelt velge å bruke Oppstartsskript-delen på VM-opprettingskonsollen for å gi tilpassede data. Du kan også bruke CLI for å få tilgang til tilpassede data for å oppnå ulike automatiseringsmål. De tilpassede dataene i GCP lar deg kjøre Cisco IOS XE-konfigurasjonskommandoer, installere Python-pakker i guesthell på Day0, kjøre skript i guesthell på Day0, og gi lisensieringsinformasjon for å starte opp CSR 1000v-forekomsten med en ønsket teknologipakke.
Utgivelser støttes
Du kan distribuere en Cisco CSR 1000v VM ved å bruke tilpassede data bare på Cisco IOS XE Gibraltar 16.12.1 eller nyere utgivelser.
- Redigering av tilpassede data,
- tilgang til tilpassede data,
- Verifisering av tilpasset datakonfigurasjon,
Redigering av tilpassede data
For å redigere de egendefinerte dataene, konfigurer følgende egenskaper:
- IOS-konfigurasjon
- Skript
- Skriptlegitimasjon
- Python-pakken
- Lisensering
Du kan plassere eiendommene i en file i hvilken som helst rekkefølge. Følgende egenskapsbeskrivelser spesifiserer avhengigheter mellom egenskapene, hvis noen. Se eksenampbootstrap fileer på: https://github.com/csr1000v/customdata-examples.
Etter å ha definert de egendefinerte dataegenskapene, kan du få tilgang til oppstartsskriptet eller de egendefinerte dataene file ved å bruke CLI som beskrevet i delen Tilgang til tilpassede data.
Konfigurere IOS-konfigurasjonsegenskapen
Hvis du vil starte opp IOS-konfigurasjonen på Day0, konfigurer egenskapen IOS Configuration. Se følgende IOS-konfigurasjon, f.eksampde:
- Seksjon: IOS-konfigurasjon
- vertsnavn CSR1
- grensesnitt GigabitEthernet1
- beskrivelse "statisk IP-adressekonfigurasjon"
- IP-adresse 10.0.0.1 255.255.255.0
- grensesnitt GigabitEthernet2
- beskrivelse "DHCP-basert IP-adressekonfigurasjon"
- ip-adresse dhcp
Etter den første linjen som lyder Seksjon: IOS-konfigurasjon, kan du legge inn en liste over Cisco IOS XE-konfigurasjonskommandoer som du vil utføre, på Cisco CSR 1000v-ruteren.
Når du kjører denne kommandoen, brukes den foregående IOS-konfigurasjonen på CSR 1000v-ruteren som kjører på GCP, på dag 0.
Konfigurering av skriptegenskapen
Scripts-egenskapen hjelper deg med å automatisere distribusjonen av CSR1000v-forekomsten. Hvis du vil kjøre et Python- eller et Bash-skript på Day0 under guesthell-konteksten, oppgi offentligheten URL og argumenter til pyton- eller bash-skriptet i Scripts-egenskapen. Et skript må inneholde et stykke kode som inkluderer shebang-tegnet (!) i den første linjen i skriptet. Denne linjen forteller Cisco IOS-XE hvilken skripttolker (Python eller Bash) du må bruke for å analysere skriptkoden. For eksample, den første linjen i et Python-skript kan inneholde #!/usr/bin/env python, mens den første linjen i et Bash-skript kan inneholde #!/bin/bash. Denne linjen lar Python- eller Bash-skriptet kjøre som kjørbar kode i et Linux-miljø. Når du kjører skriptet, kjører skriptet i guesthell-beholderen til Cisco CSR 1000v-forekomsten. For å få tilgang til guesthell-beholderen, bruk guesthell EXEC mode-kommandoen. For mer informasjon om guesthell-kommandoen, se Programability Configuration Guide. For å konfigurere Scripts-egenskapen, bruk følgende format:
Seksjon: skript
offentlig_url
I dette skriptet skal den første linjen i egenskapen lese Seksjon: Skript. I den andre linjen i eiendommen skriver du inn URL av manuset og manusets argumenter. Skriptet kan enten være et Python- eller et Bash-skript. Skriptet kjøres i guesthell i den første oppstarten når du laster opp de tilpassede dataene file, når du oppretter CSR1000v-forekomsten. Til view mer eksamples av skriptene, se "scripts" på: https://github.com/csr1000v/customdata-examples. Se også følgende eksamples:
Example 1
Seksjon: Manus
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
Seksjon: Skript
ftp://10.11.0.4/dir1/dir2/script.py -a arg1 -s arg2
Disse to linjene i Scripts-egenskapen henter script.pyscript fra FTP-serveren med IP-adressen 10.11.0.4, og kjører skriptet med ./script.py -a arg1 -s arg2 Bash-kommandoen i gjesteskallbeholderen til Cisco CSR 1000v-forekomst som bruker argumentene arg1 og arg2.
Note Hvis et skript i Scripts-egenskapen krever en Python-pakke som ikke er inkludert i standard CentOS Linux-utgivelsen (CentOS Linux-utgivelsen som for øyeblikket brukes av guesthell er CentOS Linux-utgivelse 7.1.1503), må du inkludere informasjon om Python-pakken i Python-pakkeegenskapen. For mer informasjon, se: Konfigurere Python-pakkeegenskapen, Før du får tilgang til de tilpassede dataene og kjører Bash- eller Python-skriptet, anbefaler Cisco at du tester
URL som du har tenkt å bruke, ved å bruke Scripts-egenskapen. Du kan teste ftp://10.11.0.4/dir1/dir2/script.py -a arg1 -s arg2 ved først å kjøre c-filenurl programvareverktøy for å laste ned skriptet file. I gjesteskallet skriver du inn curl kommando som vist i følgende eksample: curl -m 30 –forsøk på nytt 5 –bruker brukernavn:passord ftp://10.11.0.4/dir1/dir2/script_needs_credentials.py. Hvis curl kommandoen er vellykket, lastes en kopi av Python-skriptet ned, som bekrefter om URL er riktig.
Konfigurering av skriptlegitimasjonsegenskapen
Hvis du har spesifisert en FTP-server i Script-egenskapen, og serveren krever et brukernavn og passordlegitimasjon, spesifiser påloggingsinformasjonen ved å bruke Script-legitimasjonsegenskapen.
Note Hvis du kan få tilgang til FTP-serveren anonymt, trenger du ikke bruke egenskapen Script-legitimasjon. Konfigurer Scripts-egenskapen med en URL og parametere som samsvarer med de i egenskapen Script-legitimasjon. For å konfigurere Script credentials-egenskapen, bruk følgende format: Seksjon: Script credentials public_url
Example
Seksjon: Skriptlegitimasjon
ftp://10.11.0.4/dir1/dir2/script1.py userfoo foospass Den andre linjen i Script credentials-egenskapen spesifiserer verdiene for brukernavnet (userfoo) og passordet (foospass) for python-skriptet script1.py. Ta med navnet på FTP-serveren som også er i Scripts-egenskapen. En eksamplinjen i Scripts-egenskapen er: ftp://10.11.0.4/dir1/dir2/script1.py -a arg1 -s arg2. Se eksampdel 2 i Konfigurere skriptegenskapen,
Konfigurere Python-pakken Property
Hvis en Python-pakke kreves av et skript i Scripts-egenskapen og den ikke er en del av standard CentOS Linux-versjon 7.1.1503, må du inkludere informasjon om pakken i Python-pakkeegenskapen. Ved å inkludere Python-pakkeegenskapen i bootstrap file, sørger du for at Cisco CSR 1000v laster ned og installerer den nødvendige Python-pakken før de tilpassede dataene file som du spesifiserte i Scripts-egenskapen.
Konfigurer Python Package Property
For å konfigurere Python-pakkeegenskapen, bruk følgende format:
Seksjon: Python-pakke
pakkenavn [ versjon ] [ sudo ] { [ pip_arg1 [ ..[ pip_arg9] ] ] } Argumentene: versjon, sudo og pip_arg1 til pip_arg9 er valgfrie. Du må sette argumentene til pip-kommandoen mellom "{" og "}" klammeparenteser. Hvis du spesifiserer versjonsargumentet, lastes et spesifikt versjonsnummer ned. Hvis du spesifiserer sudo-argumentet, lastes pakken ned som en sudo-bruker. Konfigurasjon Eksamples
Example 1
Seksjon: Python-pakke
nclient 0.5.2
I denne eksample, den andre linjen i Python-pakkeegenskapen spesifiserer at pakkenavnet er "ncclient" og versjonen er "0.5.2". Når bootstrap file er lastet opp, er versjon 0.5.2 av ncclient-pakken installert i gjesteskallbeholderen til Cisco CSR 1000v.
Example 2
Seksjon: Python-pakke
csr_gcp_ha 3.0.0 sudo {–user} I dette eksample, den andre linjen i Python-pakkeegenskapen spesifiserer at pakkenavnet er "csr_gcp_ha" og versjonen er "3.0.0". Når bootstrap file er lastet opp, er versjon 3.0.0 av csr_gcp_ha-pakken installert i gjesteskallbeholderen til Cisco CSR 1000v. Følgende kommando utføres som en sudo-bruker: pip install csr_gcp_ha=3.0.0 –user.
Konfigurering av lisensegenskapen
Konfigurer lisensegenskapen for å spesifisere lisensteknologinivået for Cisco CSR 1000v-forekomsten.
- Skriv inn den første linjen i eiendommen i formatet: Seksjon: Lisens.
- Skriv inn den andre linjen i eiendommen, som spesifiserer det tekniske nivået for lisensen, ved å bruke følgende format: TechPackage:tech_level .
Note Sørg for at det ikke er mellomrom mellom "TechPackage:" og tech_level. De mulige tech_level-verdiene inkluderer: ax, security, appx eller ipbase.
Sørg for at tech_level er med små bokstaver.
Konfigurasjon Eksample
Seksjon: Lisens TechPackage:sikkerhet
Tilgang til tilpassede data
- For å kjøre de egendefinerte dataene som en file ved å bruke CLI, utfør følgende skript: Få tilgang til egendefinerte data file ved å bruke CLI
- For å kjøre de egendefinerte dataene som en file ved å bruke CLI, kjør følgende skript: gcloud compute instanser opprette –metadata-fra-file=startup-script=Customdata.txt –bilde
- Når du utfører denne kommandoen, opprettes en Cisco CSR 1000v VM. Ruteren konfigureres ved hjelp av kommandoene i file: "Customdata.txt".
Tilgang til egendefinerte data fra konsollen For å få tilgang til egendefinerte data fra konsollen, logg på GCP-konsollen. Klikk Compute Engine, og velg Opprett en forekomst. På skjermbildet Ny VM-forekomst klikker du på Management > Startup Script.
Verifisering av tilpasset datakonfigurasjon
Etter at du har kjørt det tilpassede dataskriptet, opprettes VM-en og konfigurasjonskommandoene utføres. For å bekrefte det samme, bruk følgende kommandoer og skript:
- vis versjon: For å finne ut om lisensegenskapen fungerte, skriv inn kommandoen show version i Cisco IOS XE CLI på CSR 1000v. For eksample, viser utgangen en referanse til sikkerhetslisensen.
- For å se om det oppsto feil etter å ha kjørt kommandoer i script-egenskapen, se på customdata.log file i /bootflash/ /katalog. scriptname.log file lagrer alle utdata som sendes til STDOUT av skriptet.
- For å bekrefte om Python-egenskapen fungerte, skriv inn pip freeze | grep kommando fra Guestshell til view de installerte Python-pakkene. Her refererer pakkenavn til pakken du spesifikt søker etter.
- For å bekrefte Cisco IOS XE-kommandoene i IOS Configuration-egenskapen, kjør kommandoen show running-configuration.
Dokumenter / Ressurser
![]() |
CISCO CSR 1000v bruker tilpassede data [pdfBrukerhåndbok CSR 1000v ved hjelp av tilpassede data, CSR 1000v, ved hjelp av tilpassede data, tilpassede data, data |