DevOps-bootcamp · leksjon

Automatiser nettverksenheter med cli_command

Send konfigurasjon til svitsjer og rutere.

Leksjon 1 av 413 trinn

Automatiser nettverksenheter med cli_command er en gratis leksjon i DevOps-bootcamp på CoddyKit. Dette er leksjon 1 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i DevOps-bootcamp, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.

Servere er ikke de eneste målene

Ansible kan også administrere rutere og svitsjer, ikke bare Linux-verter. Nettverksautomatisering sender konfigurasjon til enheter via SSH eller et API. 🌐

Hvorfor nettverksenheter er annerledes

Svitsjer mangler vanligvis Python, så Ansible kan ikke kopiere moduler til dem. Tilkoblingen network_cli kjører i stedet kommandoer eksternt via enhetens CLI.

vars:
  ansible_connection: ansible.netcommon.network_cli
  ansible_network_os: cisco.ios.ios

Bli kjent med cli_command

Modulen cli_command sender en råkommando til en nettverksenhet og returnerer utdataene, på samme måte som om du selv skrev kommandoen ved enhetens ledetekst.

- name: Show version
  ansible.netcommon.cli_command:
    command: show version

Ta vare på utdataene

Bruk register til å lagre det enheten returnerer. Resultatet havner i stdout, klart til at du kan undersøke eller analysere det senere.

- name: Read running config
  ansible.netcommon.cli_command:
    command: show running-config
  register: cfg

Send konfigurasjonskommandoer

For å endre konfigurasjonen må enheten være i konfigurasjonsmodus. cli_config håndterer inn- og utlogging fra denne modusen på en trygg måte.

- name: Set hostname
  ansible.netcommon.cli_config:
    config: hostname core-sw01

Svar på interaktive forespørsler

Noen kommandoer ber om bekreftelse. cli_command kan svare automatisk ved hjelp av par med prompt og answer, slik at play-et aldri blir hengende.

- ansible.netcommon.cli_command:
    command: reload
    prompt:
      - Proceed with reload
    answer:
      - 'y'

Leverandøruavhengig fra grunnen av

Den samme cli_command-oppgaven fungerer på tvers av Cisco, Juniper og Arista. Bare ansible_network_os endres, så arbeidsmåten din forblir konsekvent.

Bruk plattformmoduler når du kan

For strukturerte, idempotente endringer bør du foretrekke moduler som cisco.ios.ios_config. Bruk cli_command når ingen spesifikk modul passer.

- cisco.ios.ios_config:
    lines:
      - description uplink to core
    parents: interface GigabitEthernet0/1

Påloggingsopplysninger via SSH

Nettverksenheter autentiserer fortsatt via SSH. Angi ansible_user og et vault-passord eller en nøkkel, slik at playbookene kan logge inn uten problemer.

vars:
  ansible_user: netadmin
  ansible_password: "{{ vault_net_pass }}"

Lagre running-config

Endringer ligger i running-config til de lagres. Kjør en skrivekommando, slik at innstillingene overlever en omstart av enheten. 💾

- ansible.netcommon.cli_command:
    command: write memory

Her kommer disse modulene fra

cli_command leveres i samlingen ansible.netcommon. Installer den fra Galaxy før nettverks-playbookene dine kan bruke den.

ansible-galaxy collection install ansible.netcommon

Rask sjekk

La oss sjekke hvordan du kommuniserer med en svitsj.

Oppsummering

Modulen cli_command, via network_cli-tilkoblingen, lar Ansible kjøre og lagre kommandoer på svitsjer og rutere over SSH. ✅

Gratis å komme i gang

Lær deg DevOps-bootcamp med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
142
Leksjoner
568

Ofte stilte spørsmål

Er leksjonen «Automatiser nettverksenheter med cli_command» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien DevOps-bootcamp, inkludert «Automatiser nettverksenheter med cli_command», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.

Hva lærer jeg i «Automatiser nettverksenheter med cli_command»?

Send konfigurasjon til svitsjer og rutere. Du øver på DevOps-bootcamp med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med DevOps-bootcamp?

Ingen tidligere erfaring er nødvendig. DevOps-bootcamp på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.

Hvor lang tid tar leksjonen «Automatiser nettverksenheter med cli_command»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne DevOps-bootcamp-leksjonen?

Ja. Alle DevOps-bootcamp-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Automatiser nettverksenheter med cli_command
  2. delegate_to og run_once for orkestrering
  3. Samordne web-, app- og databaselag
  4. Tøm og aktiver lastbalanseren på nytt
← Tilbake til DevOps-bootcamp