Akwụkwọ egwu dị n'ime. Ọrụ netwọkụ n'ime igwe enwere ike ime ọhụrụ 2.9

Akwụkwọ egwu dị n'ime. Ọrụ netwọkụ n'ime igwe enwere ike ime ọhụrụ 2.9

Mwepụta na-abịa nke Red Hat Ansible Engine 2.9 na-eweta mmelite na-akpali akpali, ụfọdụ n'ime ha na-atụle n'isiokwu a. Dị ka oge niile, anyị na-azụlite nkwalite netwọkụ nwere ike ime n'ihu ọha, site na nkwado obodo. Soro anyị - lee anya akwụkwọ akụkọ na GitHub ma mụọ atụmatụ mmepe maka ntọhapụ nke Red Hat Engine nwere ike ime 2.9 na ibe wiki maka Netwọk enwere ike.

Dị ka anyị kwuputara na nso nso a, Platform akpaaka akpaaka nke Red Hat ugbu a gụnyere ụlọ elu nwere ike ime, injin nwere ike ime yana ọdịnaya netwọkụ niile nwere ike ime. Ugbu a, a na-emejuputa usoro ntanetị kachasị ewu ewu site na modul ndị nwere ike ime. Ọmụmaatụ:

  • Arista EOS
  • Cisco IOS
  • Cisco IOS XR
  • Cisco NX-OS
  • Juniper Junos
  • VyOS

Maka ndepụta zuru ezu nke nyiwe nke Red Hat na-akwado nke ọma site na ndenye aha akpaaka nwere ike, bipụtara ebe a.

Gịnị ka anyị mụtara

N'ime afọ anọ gara aga, anyị amụtala ọtụtụ ihe gbasara ịmepụta ikpo okwu akpaaka netwọkụ. Anyị mụtakwara nke ahụ otú A na-eji artifacts ikpo okwu eme ihe n'ime akwụkwọ egwuregwu enwere ike na ọrụ nke ndị ọrụ njedebe. Nke a bụ ihe anyị chọpụtara:

  • Ụlọ ọrụ na-emepụta ngwaọrụ ọ bụghị naanị otu, mana ọtụtụ ndị na-ere ahịa.
  • Akpaaka abụghị naanị ihe ngosi nka, kamakwa ọ bụ omenala.
  • Ịme netwọk akpaaka n'ọ̀tụ̀tụ̀ siri ike karịa ka o siri dị n'ihi ụkpụrụ ụkpụrụ ụlọ bụ isi nke imewe akpaaka.

Mgbe anyị tụlere atụmatụ uto ogologo oge anyị ihe karịrị otu afọ gara aga, ndị ahịa ụlọ ọrụ anyị jụrụ ihe ndị a:

  • Ekwesịrị ịhazi mkpokọta eziokwu nke ọma yana kwekọọ na usoro arụ ọrụ akpaaka n'ofe ngwaọrụ niile.
  • Imelite nhazi na ngwaọrụ ahụ dịkwa mkpa ka ịhazi ya na agbanwe agbanwe ka modul ndị nwere ike na-edozi ọkara nke abụọ nke okirikiri ka ha nwetasịrị eziokwu.
  • Anyị chọrọ ụzọ siri ike na akwadoro maka ịtụgharị nhazi ngwaọrụ ka ọ bụrụ data ahaziri. Na ndabere nke a, enwere ike ibugharị isi iyi nke eziokwu site na ngwaọrụ netwọkụ.

Nkwalite eziokwu

Ịnakọta eziokwu sitere na ngwaọrụ netwọkụ na-eji ike eme ihe na-emekarị na enweghị usoro. Usoro ikpo okwu dabere na webụ nwere ogo dị iche iche nke ike ịchịkọta eziokwu, mana ha enweghị obere ọrụ ma ọ bụ enweghị ọrụ maka ịkọwapụta na ịhazi nnochite anya data na ụzọ abụọ bara uru. Gụọ posta Ken Celenza na otú siri ike ma na-egbu mgbu ọ nwere ike isi bụrụ nyocha na ịhazi data ziri ezi.

O nwere ike ịbụ na ị chọpụtala na anyị na-arụ ọrụ n'ọrụ Injin netwọkụ enwere ike. Dị ka o kwesịrị ịdị, nbudata 24K ka emechara, ọrụ Network Engine abụrụla otu n'ime ọrụ kacha ewu ewu na Galaxy Galaxy maka ọnọdụ akpaaka netwọkụ. Tupu anyị ebuga ọtụtụ n'ime ihe a n'ime 2.8 nwere ike ịkwado maka ihe a ga-achọ na 2.9 nwere ike ime, ọrụ a nwere ike ime nyere ngwa ọrụ mbụ iji nyere aka ntughari iwu, jikwaa iwu, na ịnakọta data maka ngwaọrụ netwọkụ.

Ọ bụrụ na ị maara ka esi eji Network Engine, nke a bụ ụzọ dị mma nke ukwuu iji nakọta, nyocha, na hazie data eziokwu maka ojiji na ike. Ọdịmma nke ọrụ a bụ na ịkwesịrị ịmepụta ụyọkọ parsers maka ikpo okwu ọ bụla yana maka ọrụ netwọk niile. Iji ghọta ka o siri sie ike imepụta, ụgbọ mmiri na idobe ihe nlegharị anya, lelee ya Ihe karịrị 1200 parsers site na ụmụ okorobịa na Cisco.

Na nkenke, inweta eziokwu sitere na ngwaọrụ na ịhazigharị ha ka ọ bụrụ ụzọ abụọ bara uru dị mkpa maka akpaaka n'ọtụtụ, mana imezu nke a siri ike mgbe ị nwere ọtụtụ ndị na-ere ahịa na nyiwe netwọkụ.

Modul eziokwu netwọkụ ọ bụla dị na 2.9 nwere ike ugbu a nwere ike nyochaa nhazi nke ngwaọrụ netwọkụ wee weghachi data ahaziri ahazi - na-enweghị ọba akwụkwọ agbakwunyere, ọrụ enwere ike ma ọ bụ nyocha omenala.

Ebe ọ bụ na 2.9 nwere ike ime, oge ọ bụla ewepụtara modul netwọk emelitere, a na-emezi modul eziokwu ahụ iji nye data gbasara akụkụ a nke nhazi ahụ. Nke ahụ bụ, mmepe nke eziokwu na modul na-eme ugbu a n'otu oge ahụ, ha ga-enwekwa usoro data nkịtị.

Enwere ike weghachite nhazi nke akụrụngwa na ngwaọrụ netwọk ma gbanwee ka ọ bụrụ data ahaziri n'ụzọ abụọ. N'ụzọ abụọ a, ị nwere ike ịnakọta ma gbanwee otu ndepụta akụrụngwa site na iji isiokwu ọhụrụ gather_network_resources. Aha akụrụngwa dabara na aha modul, nke dabara adaba.

Mgbe a na-achịkọta eziokwu:

Iji isiokwu gather_facts ị nwere ike weghachite nhazi ngwaọrụ dị ugbu a na mmalite nke akwụkwọ egwu egwu, wee jiri ya mee ihe n'ime akwụkwọ egwu egwu dum. Ezipụta akụrụngwa nke a ga-ewepụta na ngwaọrụ ahụ.

- hosts: arista
  module_defaults:
    eos_facts:
      gather_subset: min
      gather_network_resources:
      - interfaces
  gather_facts: True

O nwere ike ịbụ na ị hụla ihe ọhụrụ n'ihe atụ ndị a, ya bụ - gather_facts: true dị ugbu a maka nchịkọta eziokwu ala maka ngwaọrụ netwọkụ.

Iji modul eziokwu netwọkụ ozugbo:

- name: collect interface configuration facts
  eos_facts:
    gather_subset: min
    gather_network_resources:
    - interfaces

Akwụkwọ egwuregwu ahụ weghachiri eziokwu ndị a gbasara interface ahụ:

ansible_facts:
   ansible_network_resources:
      interfaces:
      - enabled: true
        name: Ethernet1
        mtu: '1476'
      - enabled: true
        name: Loopback0
      - enabled: true
        name: Loopback1
      - enabled: true
        mtu: '1476'
        name: Tunnel0
      - enabled: true
        name: Ethernet1
      - enabled: true
        name: Tunnel1
      - enabled: true
        name: Ethernet1

Rịba ama ka onye nwere ike weghachite nhazi nke ala site na ngwaọrụ Arista wee gbanwee ya ka ọ bụrụ data ahaziri ahazi iji jiri dị ka ụzọ isi uru bara uru maka ọrụ na arụmọrụ ala.

Enwere ike ịgbakwunye eziokwu ihu na mgbanwe ndị enwere ike ịchekwa ma jiri ya ozugbo ma ọ bụ emechaa dị ka ntinye na modul akụrụngwa eos_interfaces na-enweghị nhazi ọzọ ma ọ bụ ntụgharị.

Modul akụ

Yabụ, anyị wepụrụ eziokwu ahụ, megharịa data ahụ, dabara ha n'ime eserese nhazi data dị n'ime wee nweta isi mmalite nke eziokwu. Hụ! Nke a dị mma, n'ezie, mana anyị ka kwesịrị ịgbanwe ụzọ abụọ isi uru azụ na nhazi akọwapụtara nke ikpo okwu ngwaọrụ ahụ na-atụ anya ya. Ugbu a, anyị chọrọ modul ndị akọwapụtara n'elu ikpo okwu iji zute ihe ọhụrụ a chọrọ maka nchikọta eziokwu na nhazi.

Gịnị bụ modul akụ? Ị nwere ike iche maka ngalaba nhazi ngwaọrụ dịka akụrụngwa nke ngwaọrụ ahụ nyere. Modul akụrụngwa netwọkụ nwere ụma kpachaara anya na otu akụrụngwa yana enwere ike ikpokọta ya dị ka ihe mgbochi ụlọ iji hazie ọrụ netwọk dị mgbagwoju anya. N'ihi ya, ihe achọrọ na nkọwapụta maka modul akụrụngwa na-adị mfe dị mfe, ebe ọ bụ na modul akụrụngwa nwere ike ịgụ. и hazie otu ọrụ netwọk na ngwaọrụ netwọk.

Iji kọwaa ihe modul akụ na-eme, ka anyị leba anya n'akwụkwọ egwuregwu ihe atụ nke na-egosi ọrụ idempodent site na iji eziokwu akụrụngwa netwọkụ ọhụrụ na modul. eos_l3_interface.

- name: example of facts being pushed right back to device.
  hosts: arista
  gather_facts: false
  tasks:
  - name: grab arista eos facts
    eos_facts:
      gather_subset: min
      gather_network_resources: l3_interfaces

  - name: ensure that the IP address information is accurate
    eos_l3_interfaces:
      config: "{{ ansible_network_resources['l3_interfaces'] }}"
      register: result

  - name: ensure config did not change
    assert:
      that: not result.changed

Dị ka ị na-ahụ, a na-ebufe data anakọtara na ngwaọrụ ahụ ozugbo na modul akụrụngwa kwekọrọ na-enweghị ntụgharị. Mgbe ewepụtara ya, akwụkwọ egwuregwu ahụ na-eweghachite ụkpụrụ na ngwaọrụ ma jiri ya tụnyere ndị a tụrụ anya ya. N'ihe atụ a, ụkpụrụ ndị eweghachiri dị ka a tụrụ anya ya (ya bụ, ọ na-enyocha nhazi nhazi) ma na-akọ ma nhazi ahụ agbanweela.

Ụzọ kachasị mma isi chọpụta mkpagharị nhazi bụ ịchekwa eziokwu na mgbanwe dị iche iche echekwara ma jiri ya mee ihe kwa oge na modul akụrụngwa na ọnọdụ nyocha. Nke a bụ usoro dị mfe iji hụ ma mmadụ ejirila aka gbanwee ụkpụrụ. N'ọtụtụ ọnọdụ, òtù na-enye aka mgbanwe na nhazi, n'agbanyeghị na a na-arụ ọtụtụ ọrụ site na Automation Automation.

Kedu ka modul akụrụngwa ọhụrụ si dị iche na nke gara aga?

Maka onye injinia akpaaka netwọkụ, enwere nnukwu ọdịiche atọ dị n'etiti modul akụrụngwa na 3 nwere ike ime na ụdị ndị gara aga.

1) Maka akụrụngwa netwọkụ enyere (nke nwekwara ike iche dị ka ngalaba nhazi), modul na eziokwu ga-agbasa n'ofe sistemụ arụmọrụ netwọkụ niile na-akwado n'otu oge. Anyị na-eche na ọ bụrụ na onye nwere ike na-akwado nhazi akụrụngwa n'otu ikpo okwu netwọk, anyị kwesịrị ịkwado ya ebe niile. Nke a na-eme ka iji modul akụrụngwa dị mfe n'ihi na onye injinia akpaaka netwọkụ nwere ike hazie akụrụngwa (dị ka LLDP) na sistemụ arụmọrụ netwọkụ niile nwere modul ala yana nkwado.

2) Modul akụ ugbu a gụnyere uru steeti.

  • merged: a na-ejikọta nhazi ahụ na nhazi nke enyere (nke ndabara);
  • replaced: A ga-eji nhazi nke enyere dochie nhazi ihe onwunwe;
  • overridden: A ga-eji nhazi nke enyere dochie nhazi ihe onwunwe; A ga-ehichapụ ihe ndekọ akụrụngwa na-enweghị isi;
  • deleted: A ga-ehichapụ nhazi akụrụngwa / weghachi ya na ndabara.

Akwụkwọ egwu dị n'ime. Ọrụ netwọkụ n'ime igwe enwere ike ime ọhụrụ 2.9

3) Modul akụ ugbu a gụnyere ụkpụrụ nloghachi kwụsiri ike. Mgbe modul akụrụngwa netwọk mere (ma ọ bụ tụpụtara) mgbanwe ndị dị mkpa na ngwaọrụ netwọk, ọ na-eweghachi otu igodo-uru ụzọ abụọ na akwụkwọ egwuregwu.

  • before: nhazi na ngwaọrụ n'ụdị data ahaziri tupu ọrụ ahụ;
  • after: ma ọ bụrụ na ngwaọrụ agbanweela (ma ọ bụ nwere ike gbanwee ma ọ bụrụ na ejiri ọnọdụ ule), a ga-eweghachi nhazi nke ga-apụta dị ka data ahaziri;
  • commands: Iwu nhazi ọ bụla na-agba ọsọ na ngwaọrụ ahụ iji webata ya na steeti achọrọ.

Akwụkwọ egwu dị n'ime. Ọrụ netwọkụ n'ime igwe enwere ike ime ọhụrụ 2.9

Akwụkwọ egwu dị n'ime. Ọrụ netwọkụ n'ime igwe enwere ike ime ọhụrụ 2.9

Gịnị ka ihe a niile pụtara? Gịnị mere o ji dị mkpa?

Ihe post a na-ekpuchi ọtụtụ echiche dị mgbagwoju anya, mana anyị nwere olile anya na n'ikpeazụ ị ga-enwe nghọta nke ọma ihe ndị ahịa ụlọ ọrụ na-arịọ maka n'ezie nchịkọta, data normalization, na nhazi loop maka ikpo okwu akpaaka. Ma gịnị mere ha ji chọọ ndozi ndị a? Ọtụtụ ụlọ ọrụ na-achụso mgbanwe dijitalụ ugbu a iji mee ka gburugburu IT ha dịkwuo mma na asọmpi. Maka mma ma ọ bụ ka njọ, ọtụtụ ndị injinia netwọkụ na-aghọ ndị nrụpụta netwọk ma ọ bụ n'ihi ọdịmma onwe onye ma ọ bụ n'aka njikwa.

Ndị otu na-achọpụta na ịmegharị ndebiri netwọkụ ọ bụla anaghị edozi nsogbu nke silos ma na-abawanye arụmọrụ ruo n'ókè ụfọdụ. Platform Red Hat Ansible Automation Platform na-enye ụdị data akụrụngwa siri ike yana ụkpụrụ iji jikwaa data dị n'okpuru na ngwaọrụ netwọkụ. Ya bụ, ndị ọrụ na-eji nwayọọ nwayọọ na-ahapụ usoro nhazi nke onye ọ bụla na-akwado usoro ọgbara ọhụrụ na-emesi ike na teknụzụ (dịka ọmụmaatụ, adreesị IP, VLAN, LLDP, wdg), karịa na mmejuputa onye na-ere ahịa.

Nke a ọ pụtara na a na-agụta ụbọchị nke modulu iwu a pụrụ ịdabere na ya ma gosipụta ya? Ọ dịghị ikpe. Modul akụrụngwa netwọkụ a na-atụ anya agaghị adị na ya n'ọnọdụ niile ma ọ bụ maka onye na-ere ahịa ọ bụla, yabụ na ndị injinia netwọk ka ga-achọrịrị iwu na modulu nhazi maka ụfọdụ mmejuputa. Ebumnuche nke modul akụrụngwa bụ ime ka nnukwu ndebiri Jinja dị mfe ma mee ka nhazi ngwaọrụ anaghị arụ ọrụ ka ọ bụrụ usoro JSON ahaziri. Site na modul akụrụngwa, ọ ga-adịrị netwọọdụ ndị dị adị mfe ịgbanwe nhazi ha ka ọ bụrụ ụzọ ụzọ isi uru ahaziri ahazi nke na-anọchi anya isi mmalite nke eziokwu dị mfe ịgụ. Site n'iji ụzọ ụzọ igodo-uru ahaziri ahazi, ị nwere ike ịpụ site na nhazi nhazi na ngwaọrụ ọ bụla gaa na-arụ ọrụ na data ahaziri onwe ya wee weta netwọk n'ihu nke usoro akụrụngwa-dị ka koodu.

Kedu ụdị modul akụrụngwa ga-abata na Injin enwere ike 2.9?

Tupu anyị agwa gị n'ụzọ zuru ezu ihe ga-eme na ike 2.9, ka anyị cheta otú anyị si kewaa dum akporo ọrụ.

Anyị chọpụtara ụdị 7 wee kenye akụrụngwa netwọkụ akọwapụtara maka nke ọ bụla:

Akwụkwọ egwu dị n'ime. Ọrụ netwọkụ n'ime igwe enwere ike ime ọhụrụ 2.9

Cheta na: Ezubere ma mejuputa akụrụngwa n'okirikiri na ike 2.9.
Dabere na nzaghachi sitere n'aka ndị ahịa ụlọ ọrụ na ndị obodo, ọ bụ ihe ezi uche dị na ya ibu ụzọ lụso modul ndị ahụ metụtara ụkpụrụ netwọkụ topology protocols, virtualization, na interfaces.
Ndị otu netwọk nwere ike chepụtara modul akụrụngwa ndị a wee kwekọọ na nyiwe nke Red Hat na-akwado:

Akwụkwọ egwu dị n'ime. Ọrụ netwọkụ n'ime igwe enwere ike ime ọhụrụ 2.9

Ndị obodo nwere ike mepụta modul ndị a:

  • exos_lldp_global - site na oke netwọkụ.
  • nxos_bfd_interfaces - nke Cisco
  • nxos_telemetry - nke Cisco

Dị ka ị na-ahụ, echiche nke modul akụ dabara na atụmatụ nke ikpo okwu anyị. Nke ahụ bụ, anyị na-agụnye ike na ọrụ ndị dị mkpa na Ansible n'onwe ya iji kwado nhazi nhazi na mmepe nke modul netwọk, nakwa iji mee ka ọrụ ndị ọrụ dị mfe na ọkwa nke ọrụ na akwụkwọ egwu. Iji gbasaa mmepe nke modul akụ, ndị otu Ansible wepụtara ngwa ọrụ Module Builder.

Atụmatụ maka ike 2.10 na karịa

Ozugbo a tọhapụrụ 2.9 nwere ike ime, anyị ga na-arụ ọrụ na usoro ihe onwunwe na-esote maka 2.10 nwere ike ime, nke a ga-eji mee ka hazikwuo topology na amụma netwọk, dịka. ACL, OSPF na BGP. Enwere ike ịhazi atụmatụ mmepe ahụ, yabụ ọ bụrụ na ị nwere nkọwa, biko kọọrọ ya Obodo netwọk nwere ike ime.

Akụrụngwa na ịmalite

Mwepụta mgbasa ozi gbasara Platform Automation Ansible
Blọọgụ Platform akpaaka nwere ike ime
Ọdịnihu nke nnyefe ọdịnaya na ike
Ntụleghachi n'ịgbanwe nhazi ọrụ enwere ike

isi: www.habr.com

Tinye a comment