Чӣ тавр инфрасохтори шабакаи худро назорат кардан мумкин аст. Боби чорум. Автоматика. Шаблонҳо

Ин мақола шашумин дар силсилаи "Чӣ тавр инфрасохтори шабакавии худро назорат кардан мумкин аст" мебошад. Мундариҷаи ҳама мақолаҳои силсила ва истинодҳоро пайдо кардан мумкин аст дар ин ҷо.

Якчанд мавзӯъҳоро паси сар карда, ман тасмим гирифтам, ки боби навро оғоз кунам.

Ман каме дертар ба амният бармегардам. Дар ин ҷо ман мехоҳам як равиши оддӣ, вале муассирро муҳокима кунам, ки боварӣ дорам, ки дар ин ё он шакл метавонад барои бисёриҳо муфид бошад. Ин бештар як ҳикояи кӯтоҳ дар бораи он аст, ки чӣ гуна автоматизатсия ҳаёти муҳандисро тағир дода метавонад. Мо дар бораи истифодаи қолабҳо сӯҳбат хоҳем кард. Дар охир рӯйхати лоиҳаҳои ман мавҷуд аст, ки дар он шумо мебинед, ки ҳама чизҳои дар ин ҷо тавсифшуда чӣ гуна кор мекунанд.

DevOps барои шабака

Эҷоди конфигуратсия бо скрипт, бо истифода аз GIT барои назорати тағирот дар инфрасохтори IT, "боргузорӣ" -и дурдаст - ин ғояҳо дар навбати аввал ҳангоми фикр кардан дар бораи татбиқи техникии равиши DevOps меоянд. Афзалиятхо аёнанд. Вале, мутаассифона, камбудихо хам чой доранд.

Вақте ки беш аз 5 сол пеш таҳиягарони мо бо ин пешниҳодҳо ба назди мо, шабакадорон омаданд, мо шод набудем.

Бояд бигӯям, ки мо як шабакаи хеле рангорангро мерос гирифтем, ки аз таҷҳизот аз тақрибан 10 фурӯшандаи гуногун иборат буд. Конфигуратсия кардани баъзе чизҳо тавассути cli дӯстдоштаамон қулай буд, аммо дар баъзеи дигар мо истифодаи GUI-ро бартарӣ додем. Гайр аз ин, кори дуру дароз дар тачхизоти «зинда» ба мо дар вакти реалй назорат карданро ёд дод. Масалан, ҳангоми ворид кардани тағирот, ман дар кори мустақим тавассути cli хеле бароҳат ҳис мекунам. Бо ин роҳ ман метавонам зуд бубинам, ки чизе хато кардааст ва тағиротро баргардонам. Хамаи ин ба акидахои онхо то андозае мухолиф буд.

Саволҳои дигар низ ба миён меоянд, масалан, интерфейс метавонад аз версия ба версияи нармафзор каме тағйир ёбад. Ин дар ниҳоят боиси эҷоди скрипти шумо "конфигуратсияи" нодуруст мегардад. Ман намехоҳам, ки истеҳсолотро барои "давидан" истифода барам.

Ё чӣ тавр фаҳмидан мумкин аст, ки фармонҳои конфигуратсия дуруст истифода шудаанд ва дар сурати хато чӣ бояд кард?

Намехохам бигуям, ки хамаи ин масъалахо халнашавандаанд. Танҳо гуфтани "А" эҳтимол гуфтани "B" низ маъно дорад ва агар шумо хоҳед, ки ҳамон равандҳоро барои назорати тағирот, ки дар таҳия истифода кунед, ба шумо лозим аст, ки ба ғайр аз истеҳсол муҳитҳои таҳия ва саҳнасозӣ дошта бошед. Он гоҳ ин равиш пурра ба назар мерасад. Аммо ин чӣ қадар арзиш хоҳад дошт?

Аммо як вазъияте ба амал меояд, ки камбудихо амалан бартараф карда мешаванду факат бартариятхо боки мемонанд. Ман дар бораи кори лоихакашй сухан меронам.

Лоиҳа

Дар давоми ду соли охир ман дар лоиҳаи бунёди маркази додаҳо барои як провайдери калон иштирок мекардам. Ман барои F5 ва Пало Алто дар ин лоиҳа масъул ҳастам. Аз нуқтаи назари Cisco, ин "таҷҳизоти тарафи сеюм" аст.

Барои ман шахсан дар ин лоиҳа ду марҳилаи алоҳида вуҷуд дорад.

Марҳилаи якум

Соли аввал ман беохир банд будам, шабу рӯзҳои истироҳат кор мекардам. Сарамро баланд карда натавонистам. Фишори роҳбарият ва фармоишгар сахт ва пайваста буд. Дар реҷаи доимӣ, ман ҳатто кӯшиш карда наметавонистам, ки равандро оптимизатсия кунам. Ин на танҳо ва на он қадар конфигуратсияи таҷҳизот, балки таҳияи ҳуҷҷатҳои лоиҳавӣ буд.

Санҷишҳои аввал оғоз шуданд ва ман аз он ки чӣ қадар хатоҳои хурд ва носаҳеҳӣ роҳ дода шуданд, ҳайрон мешудам. Албатта, ҳама чиз кор мекард, аммо дар ном ҳарфи гумшуда буд, дар фармон сатри гумшуда буд... Санҷишҳо идома меёфт ва ман аллакай дар муборизаи доимӣ ва ҳамарӯза бо хатоҳо, санҷишҳо ва ҳуҷҷатҳо будам. .

Ин як сол давом кард. Лоиҳа, то ҷое ки ман фаҳмидам, барои ҳама осон набуд, аммо оҳиста-оҳиста фармоишгар бештар ва бештар қаноатманд шуд ва ин имкон дод, ки муҳандисони иловагӣ ба кор ҷалб карда шаванд, ки як қисми кори муқаррариро худашон ба ӯҳда гиранд.

Акнун мо метавонем каме ба атроф назар кунем.
Ва ин ибтидои марҳилаи дуюм буд.

Марҳилаи дуюм

Ман тасмим гирифтам, ки равандро автоматӣ кунам.

Он чизе ки ман аз муоширати худ бо таҳиягарон дар он вақт фаҳмидам (ва мо бояд эҳтиром кунем, мо як дастаи қавӣ доштем) ин аст, ки формати матн, гарчанде ки дар назари аввал чизе аз ҷаҳони системаи оператсионии DOS ба назар мерасад, рақам дорад. хосиятҳои арзишманд.
Ҳамин тавр, масалан, формати матн муфид хоҳад буд, агар шумо хоҳед, ки аз GIT ва ҳама ҳосилаҳои он пурра истифода баред. Ва ман мехостам.

Хуб, чунин ба назар мерасад, ки шумо метавонед конфигуратсия ё рӯйхати фармонҳоро нигоҳ доред, аммо ворид кардани тағирот хеле нороҳат аст. Гайр аз ин, дар вакти лоихакашй боз як вазифаи мухим ба миён меояд. Шумо бояд ҳуҷҷатҳое дошта бошед, ки тарҳи шуморо дар маҷмӯъ тавсиф мекунанд (Тарроҳии сатҳи паст) ва татбиқи мушаххас (Нақшаи татбиқи шабака). Ва дар ин ҳолат, истифодаи қолибҳо як варианти хеле мувофиқ ба назар мерасад.

Ҳамин тавр, ҳангоми истифодаи YAML ва Jinja2, файли YAML бо параметрҳои конфигуратсия ба монанди суроғаҳои IP, рақамҳои BGP AS, ... нақши NIP-ро комилан иҷро мекунад, дар ҳоле ки қолибҳои Jinja2 синтаксиси мувофиқи тарҳро дар бар мегиранд, яъне он аслан инъикоси LLD.

Барои омӯхтани YAML ва Jinja2 ду рӯз лозим шуд. Якчанд мисолҳои хуб барои фаҳмидани он ки ин чӣ гуна кор мекунад, кофӣ аст. Пас аз он барои сохтани ҳама шаблонҳое, ки ба тарҳи мо мувофиқанд, тақрибан ду ҳафта лозим шуд: як ҳафта барои Пало Алто ва як ҳафтаи дигар барои F5. Ҳамаи ин дар githab корпоративӣ ҷойгир карда шудааст.

Акнун раванди тағирот чунин менамуд:

  • файли YAML-ро тағир дод
  • файли конфигуратсияро бо истифода аз қолаб офарид (Jinja2)
  • дар анбори дурдаст захира карда мешавад
  • конфигуратсияи сохташударо ба таҷҳизот бор кард
  • Ман хато дидам
  • файли YAML ё қолаби Jinja2-ро иваз кард
  • файли конфигуратсияро бо истифода аз қолаб офарид (Jinja2)
  • ...

Маълум аст, ки дар аввал барои таҳрир вақти зиёд сарф мешуд, аммо пас аз як ё ду ҳафта ин хеле камёфт шуд.

Санҷиши хуб ва имкони ислоҳи ҳама чиз хоҳиши муштарӣ барои тағир додани конвенсияи номгузорӣ буд. Онҳое, ки бо F5 кор мекарданд, шиддати вазъиятро дарк мекунанд. Аммо барои ман ҳама чиз оддӣ буд. Ман номҳоро дар файли YAML тағир додам, тамоми конфигуратсияро аз таҷҳизот нест кардам, як нав тавлид кардам ва онро бор кардам. Ҳама чиз, аз ҷумла ислоҳи хатогиҳо, 4 рӯзро дар бар гирифт: барои ҳар як технология ду рӯз. Пас аз он, ман ба марҳилаи навбатӣ, яъне таъсиси марказҳои додаҳои DEV ва Staging омода будам.

Dev and Staging

Саҳнасозӣ воқеан истеҳсолотро комилан такрор мекунад. Dev як нусхаи сахт кандашуда аст, ки асосан дар сахтафзори виртуалӣ сохта шудааст. Вазъияти беҳтарин барои муносибати нав. Агар ман вақти сарфкардаамро аз раванди умумӣ ҷудо кунам, пас ман фикр мекунам, ки кор на бештар аз 2 ҳафта давом кард. Вақти асосӣ интизори тарафи дигар ва ҷустуҷӯи мушкилот дар якҷоягӣ аст. Татбиқи ҳизби 3-юм аз ҷониби дигарон қариб нодида гирифта шуд. Ҳатто вақт барои омӯхтани чизе ва навиштани якчанд мақола дар Ҳабре буд :)

Биёед бубинем

Пас, ман дар сатри поён чӣ дорам?

  • Барои тағир додани конфигуратсия танҳо ман бояд кор кунам, ин тағир додани файли оддӣ ва возеҳ сохтории YAML бо параметрҳои конфигуратсия аст. Ман ҳеҷ гоҳ скрипти python-ро тағир намедиҳам ва хеле кам (танҳо агар хато бошад) ман Jinja2 гармиро иваз мекунам
  • Аз нуқтаи назари ҳуҷҷатгузорӣ, ин вазъият қариб беҳтарин аст. Шумо ҳуҷҷатҳоро тағир медиҳед (файлҳои YAML ҳамчун NIP хидмат мекунанд) ва ин конфигуратсияро ба таҷҳизот бор мекунед. Ҳамин тариқ, ҳуҷҷатҳои шумо ҳамеша нав карда мешаванд

Хамаи ин ба он оварда расонд, ки

  • сатҳи хато қариб ба 0 афтод
  • 90 фоизи реҷа аз байн рафтааст
  • суръати ичрои он хеле афзуд

ПАЙ, F5Y, ACY

Ман гуфтам, ки чанд мисол барои фаҳмидани он ки чӣ тавр кор мекунад, кофӣ аст.
Дар ин ҷо як нусхаи кӯтоҳ (ва албатта тағирёфта) он чизест, ки дар давоми кори ман офарида шудааст.

ПРОБЛЕМА = ҷойгиркунӣ Pалой Aлто аз Yaml = Пало Алто аз Ямл
F5Y = ҷойгиркунӣ F5 аз Yaml = F5 аз Yaml (ба наздикӣ)
ACY = ҷойгиркунӣ ACман аз Yaml = F5 аз Yамл

Ман дар бораи ACY чанд калима илова мекунам (набо он ки бо ACI ошуфта шавад).

Онҳое, ки бо ACI кор кардаанд, медонанд, ки ин мӯъҷиза (ва ба таври хуб низ) бешубҳа аз ҷониби шабакакорон офарида нашудааст :). Ҳама чизеро, ки дар бораи шабака медонистед, фаромӯш кунед - он барои шумо муфид нахоҳад буд!
Ин каме муболиғашуда аст, аммо он тақрибан эҳсосеро ифода мекунад, ки ман дар тӯли 3 соли охир бо ACI пайваста аз сар мегузаронам.

Ва дар ин ҳолат, ACY на танҳо як имконияти сохтани раванди идоракунии тағирот аст (ки ин махсусан дар мавриди ACI муҳим аст, зеро он бояд қисми марказӣ ва муҳимтарини маркази маълумоти шумо бошад), балки инчунин ба шумо имкон медиҳад, ки интерфейси ба истифодабаранда дӯстона барои эҷоди конфигуратсия.

Муҳандисони ин лоиҳа Excel-ро барои танзими ACI ба ҷои YAML бо ҳамон мақсадҳо истифода мебаранд. Албатта, бартариҳои истифодаи Excel вуҷуд доранд:

  • NIP-и худро дар як файл
  • аломатҳои зебое, ки барои муштарӣ дидани он писанд аст
  • шумо метавонед якчанд асбобҳои Excel-ро истифода баред

Аммо як минус вуҷуд дорад ва ба назари ман он аз фоидаҳо зиёдтар аст. Назорати тағирот ва ҳамоҳангсозии кори гурӯҳ хеле мушкилтар мешавад.

ACY воқеан як барномаи ҳамон равишҳост, ки ман барои тарафи сеюм барои танзими ACI истифода кардам.

Манбаъ: will.com

Илова Эзоҳ