Intensiv DevOps-uddannelse · Lektion

Automatisér netværksenheder med cli_command

Skub konfiguration til switches og routere.

Lektion 1 af 413 trin

Automatisér netværksenheder med cli_command er en gratis Intensiv DevOps-uddannelse-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Intensiv DevOps-uddannelse, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Intensiv DevOps-uddannelse-kurset indeholder 4 lektioner i alt.

Servere er ikke de eneste mål

Ansible kan også administrere routere og switche, ikke kun Linux-værter. Netværksautomatisering sender konfiguration til enheder via SSH eller en API. 🌐

Hvorfor netværksenheder er anderledes

Switche mangler normalt Python, så Ansible kan ikke kopiere moduler til dem. Forbindelsen network_cli kører i stedet kommandoer eksternt via enhedens CLI.

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

Mød cli_command

Modulet cli_command sender en rå kommando til en netværksenhed og returnerer dens uddata, ligesom hvis du selv skrev ved enhedens prompt.

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

Gem uddataene

Brug register til at gemme det, enheden returnerer. Resultatet placeres i stdout, så du kan undersøge eller analysere det senere.

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

Send konfigurationskommandoer

Hvis konfigurationen skal ændres, skal enheden være i konfigurationstilstand. cli_config håndterer sikkert at gå ind i og ud af tilstanden for dig.

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

Besvar interaktive prompter

Nogle kommandoer beder om en bekræftelse. cli_command kan svare automatisk ved hjælp af par af prompts og svar, så playet aldrig hænger.

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

Leverandørneutral fra starten

Den samme opgave med cli_command fungerer på tværs af Cisco, Juniper og Arista. Kun ansible_network_os ændres, så din stil forbliver ensartet.

Brug platformsmoduler, når du kan

Til strukturerede, idempotente ændringer bør du foretrække moduler som cisco.ios.ios_config. Brug cli_command, når der ikke findes et passende specifikt modul.

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

Legitimationsoplysninger via SSH

Netværksenheder godkender stadig brugere via SSH. Angiv ansible_user og en vault-adgangskode eller -nøgle, så playbooks kan logge korrekt ind.

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

Gem den kørende konfiguration

Ændringer ligger i den kørende konfiguration, indtil de gemmes. Kør en skrivekommando, så indstillingerne overlever en genstart af enheden. 💾

- ansible.netcommon.cli_command:
    command: write memory

Hvor kommer disse moduler fra

cli_command leveres i samlingen ansible.netcommon. Installér den fra Galaxy, før dine netværksplaybooks kan bruge den.

ansible-galaxy collection install ansible.netcommon

Hurtigt tjek

Lad os se, hvordan du kommunikerer med en switch.

Opsamling

Modulet cli_command lader via network_cli-forbindelsen Ansible køre og gemme kommandoer på switche og routere over SSH. ✅

Gratis at komme i gang

Lær Intensiv DevOps-uddannelse med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
142
Lektioner
568

Ofte stillede spørgsmål

Er lektionen “Automatisér netværksenheder med cli_command” gratis?

Ja — alle 3 lektioner i læringssporet Intensiv DevOps-uddannelse, inklusive “Automatisér netværksenheder med cli_command”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Intensiv DevOps-uddannelse-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Automatisér netværksenheder med cli_command”?

Skub konfiguration til switches og routere. Du øver dig i Intensiv DevOps-uddannelse med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Intensiv DevOps-uddannelse?

Der kræves ingen tidligere erfaring. Intensiv DevOps-uddannelse på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “Automatisér netværksenheder med cli_command”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Intensiv DevOps-uddannelse-lektion?

Ja. Alle Intensiv DevOps-uddannelse-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Automatisér netværksenheder med cli_command
  2. delegate_to & run_once til orkestrering
  3. Koordinér web-, app- & databaselag
  4. Dræn og genaktivér load balanceren
← Tilbage til Intensiv DevOps-uddannelse