Pehea e lawe ai i ka mana o kāu ʻoihana pūnaewele. Mokuna Eha. ʻOtometi. Nā kumu hoʻohālike

ʻO kēia ʻatikala ka ono o ka moʻo "Pehea e lawe ai i ka mana o kāu ʻoihana Pūnaewele." Hiki ke loaʻa nā ʻatikala a pau o ka moʻo a me nā loulou maanei.

Ma hope o ka waiho ʻana i kekahi mau kumuhana, ua hoʻoholo wau e hoʻomaka i kahi mokuna hou.

E hoʻi hou wau i kahi palekana ma hope iki. Maʻaneʻi makemake wau e kūkākūkā i kahi ala maʻalahi akā maikaʻi, aʻu i maopopo ai, ma kekahi ʻano a i ʻole kekahi, hiki ke hoʻohana i nā mea he nui. He moʻolelo pōkole kēia e pili ana i ka hiki ke hoʻololi i ke ola o kahi ʻenekinia. E kamaʻilio mākou e pili ana i ka hoʻohana ʻana i nā templates. Ma ka hopena aia kahi papa inoa o kaʻu mau papahana kahi āu e ʻike ai pehea e hana ai nā mea a pau i wehewehe ʻia ma aneʻi.

DevOps no ka pūnaewele

Ke hana nei i kahi hoʻonohonoho me kahi palapala, me ka hoʻohana ʻana iā GIT e kāohi i nā loli i ka ʻōnaehana IT, mamao "hoʻouka" - hele mua kēia mau manaʻo ke noʻonoʻo ʻoe e pili ana i ka hoʻokō ʻenehana o ke ala DevOps. ʻIke ʻia nā pōmaikaʻi. Akā, ʻo ka mea pōʻino, aia kekahi mau hemahema.

I ka wā ma mua o 5 mau makahiki i hala aku nei, ua hele mai kā mākou mea hoʻomohala iā mākou, nā pūnaewele, me kēia mau manaʻo, ʻaʻole mākou i hauʻoli.

Pono wau e ʻōlelo ua loaʻa iā mākou kahi pūnaewele motley, ʻo ia hoʻi nā lako mai kahi 10 mau mea kūʻai aku. Ua maʻalahi ka hoʻonohonoho ʻana i kekahi mau mea ma o kā mākou cli punahele, akā i nā mea ʻē aʻe ua makemake mākou e hoʻohana i ka GUI. Eia kekahi, ua aʻo mai ka hana lōʻihi i nā mea "ola" iā mākou i ka mana maoli. No ka laʻana, i ka wā e hoʻololi ai, ʻoi aku ka ʻoluʻolu o ka hana pololei ma o ka cli. Ma kēia ala hiki iaʻu ke ʻike koke ua hewa kekahi mea a hoʻihoʻi i nā loli. Ua kue keia mau mea a pau me ko lakou mau manao.

E kū mai ana kekahi mau nīnau, no ka laʻana, hiki ke hoʻololi iki ka interface mai ka mana a i ka mana o ka polokalamu. ʻO kēia ka mea e hana ai i kāu palapala i ka "config" hewa. ʻAʻole wau makemake e hoʻohana i ka hana no ka "holo i loko".

A i ʻole, pehea e hoʻomaopopo ai ua hoʻopili pololei ʻia nā kauoha hoʻonohonoho a me ka mea e hana ai inā he hewa?

ʻAʻole wau makemake e ʻōlelo ʻaʻole hiki ke hoʻonā ʻia kēia mau pilikia āpau. ʻO ka ʻōlelo wale ʻana "A" maʻalahi paha ka ʻōlelo ʻana iā "B", a inā makemake ʻoe e hoʻohana i nā kaʻina like no ka hoʻololi ʻana i ka mana e like me ka hoʻomohala ʻana, a laila pono ʻoe e loaʻa i nā dev a me nā kahua hoʻokūkū hoʻohui i ka hana. A laila ua pau kēia ʻano hana. Akā, ehia ke kumu kūʻai?

Akā aia kahi kūlana i ka wā e hoʻohālikelike ʻia nā hemahema, a ʻo nā mea maikaʻi wale nō ke koe. Ke kamaʻilio nei wau e pili ana i ka hana hoʻolālā.

ʻO ka papahana

No nā makahiki ʻelua i hala iho nei ua komo wau i kahi papahana e kūkulu i kahi kikowaena data no kahi mea hoʻolako nui. ʻO wau ke kuleana no F5 a me Palo Alto ma kēia papahana. Mai ka manaʻo o Cisco, ʻo ia ka "3rd party equipment".

Noʻu iho, ʻelua mau pae ʻokoʻa o kēia papahana.

Hana mua

ʻO ka makahiki mua aʻu i hana mau ai, hana au i nā pō a me nā hopena pule. ʻAʻole hiki iaʻu ke hāpai i koʻu poʻo. Ua ikaika a hoʻomau ka paʻi mai ka hoʻokele a me ka mea kūʻai aku. Ma kahi hana mau, ʻaʻole hiki iaʻu ke hoʻāʻo e hoʻomaikaʻi i ke kaʻina hana. ʻAʻole ʻo ia wale nō ka hoʻonohonoho ʻana o nā mea hana e like me ka hoʻomākaukau ʻana i nā palapala hoʻolālā.

Ua hoʻomaka nā hoʻāʻo mua, a e kahaha wau i ka nui o nā hewa liʻiliʻi a me nā hemahema i hana ʻia. ʻOiaʻiʻo, ua hana nā mea a pau, akā aia kahi leka i nalowale i ka inoa, aia kahi laina i hala i ke kauoha ... Ua hele mau nā hoʻokolohua, a ua hele wau i kahi hakakā mau i kēlā me kēia lā me nā hewa, nā hoʻokolohua a me nā palapala. .

Ua hoʻomau kēia no hoʻokahi makahiki. ʻO ka papahana, e like me kaʻu i hoʻomaopopo ai, ʻaʻole i maʻalahi no nā mea a pau, akā ua maʻalahi ka mea kūʻai aku a ʻoi aku ka māʻona, a ʻo ia ka mea i hiki ai ke hoʻolimalima i nā ʻenekinia ʻē aʻe i hiki ke lawe i kahi ʻāpana o ka hana maʻamau.

I kēia manawa hiki iā mākou ke nānā iki a puni.
A ʻo kēia ka hoʻomaka ʻana o ka pae ʻelua.

Kahua ʻelua

Ua hoʻoholo wau e hoʻokaʻawale i ke kaʻina hana.

ʻO kaʻu mea i hoʻomaopopo ai mai kaʻu kamaʻilio ʻana me nā mea hoʻomohala i kēlā manawa (a pono mākou e hoʻomaikaʻi, he hui ikaika kā mākou) ʻo ka ʻano kikokikona, ʻoiai i ka nānā mua ʻana e like me kahi mea mai ka honua o ka ʻōnaehana hana DOS, he helu. o na waiwai waiwai .
No laila, no ka laʻana, pono ke ʻano kikokikona inā makemake ʻoe e hoʻohana pono i ka GIT a me kāna mau derivatives. A ua makemake au.

ʻAe, me he mea lā hiki iā ʻoe ke mālama i kahi hoʻonohonoho a i ʻole kahi papa inoa o nā kauoha, akā paʻakikī loa ka hana ʻana i nā loli. Eia kekahi, aia kekahi hana koʻikoʻi i ka wā hoʻolālā. Pono ʻoe i nā palapala e wehewehe ana i kāu hoʻolālā holoʻokoʻa (Low Level Design) a me ka hoʻokō kikoʻī (Network Implementation Plan). A i kēia hihia, ʻo ka hoʻohana ʻana i nā templates e like me kahi koho kūpono loa.

No laila, i ka hoʻohana ʻana iā YAML a me Jinja2, kahi faila YAML me nā ʻāpana hoʻonohonoho e like me nā helu IP, nā helu BGP AS, ... e hoʻokō pono i ke kuleana o NIP, ʻoiai ʻo Jinja2 templates e pili ana i ka syntax e pili ana i ka hoʻolālā, ʻo ia hoʻi, he mea maoli ia. noonoo o LLD.

ʻElua mau lā e aʻo ai iā YAML a me Jinja2. Ua lawa kekahi mau hiʻohiʻona maikaʻi e hoʻomaopopo i ke ʻano o kēia hana. A laila, lawe ʻia ma kahi o ʻelua pule no ka hana ʻana i nā mamana a pau i kūpono i kā mākou hoʻolālā: hoʻokahi pule no Palo Alto a me kekahi pule no F5. Ua kau ʻia kēia mau mea ma ka githab hui.

I kēia manawa ua like ke kaʻina hana hoʻololi:

  • ua hoʻololi i ka faila YAML
  • hana i kahi faila hoʻonohonoho me ka hoʻohana ʻana i kahi template (Jinja2)
  • mālama ʻia ma kahi waihona mamao
  • hoʻouka i ka hoʻonohonoho i hana ʻia i ka lako
  • Ua ʻike au i kahi hewa
  • ua hoʻololi i ka faila YAML a i ʻole Jinja2 template
  • hana i kahi faila hoʻonohonoho me ka hoʻohana ʻana i kahi template (Jinja2)
  • ...

Ua maopopo i ka manawa mua i hoʻohana ʻia i ka hoʻoponopono ʻana, akā ma hope o hoʻokahi pule a ʻelua paha ua lilo kēia i mea paʻakikī.

ʻO kahi hoʻāʻo maikaʻi a me ka manawa kūpono e debug i nā mea āpau ka makemake o ka mea kūʻai aku e hoʻololi i ka ʻaha inoa inoa. Hoʻomaopopo ka poʻe i hana pū me F5 i ka piquancy o ke kūlana. Akā iaʻu he mea maʻalahi loa ia. Ua hoʻololi au i nā inoa ma ka faila YAML, holoi i ka hoʻonohonoho holoʻokoʻa mai nā mea hana, hana i kahi mea hou a hoʻouka. ʻO nā mea a pau, me ka hoʻoponopono bug, lawe i nā lā 4: ʻelua lā no kēlā me kēia ʻenehana. Ma hope o kēlā, ua mākaukau wau no ka pae aʻe, ʻo ia hoʻi ka hana ʻana i nā kikowaena data DEV a me Staging.

ʻO Dev a me ka hoʻokūkū

Hoʻopili maoli ka staging i ka hana. ʻO Dev kahi kope i hoʻokaʻawale ʻia i kūkulu ʻia ma luna o nā lako uila. He kūlana kūpono no kahi ala hou. Inā hoʻokaʻawale wau i ka manawa aʻu i hoʻohana ai mai ke kaʻina holoʻokoʻa, manaʻo wau ʻaʻole i ʻoi aku ka hana ma mua o 2 pule. ʻO ka manawa nui ke kali nei i kēlā ʻaoʻao a ʻimi pū i nā pilikia. Ua aneane ʻike ʻole ʻia ka hoʻokō ʻana o ka ʻaoʻao 3 e nā poʻe ʻē aʻe. Aia kekahi manawa e aʻo ai i kekahi mea a kākau i ʻelua mau ʻatikala ma Habré :)

E hōʻuluʻulu kākou

No laila, he aha kaʻu i ka laina lalo?

  • ʻO kaʻu mea e hana ai no ka hoʻololi ʻana i ka hoʻonohonoho ʻana, ʻo ia ke hoʻololi i kahi faila YAML maʻalahi i hoʻonohonoho pono ʻia me nā ʻāpana hoʻonohonoho. ʻAʻole au e hoʻololi i ka palapala python a ʻaʻole loa (inā he hewa wale nō) hoʻololi wau i ka wela wela Jinja2
  • Mai kahi ʻike palapala, he kūlana kūpono loa kēia. Hoʻololi ʻoe i nā palapala (nā faila YAML e lilo i NIP) a hoʻouka i kēia hoʻonohonoho i nā mea hana. Ma kēia ʻano e hoʻomau mau ʻia kāu palapala

Ua alakaʻi kēia mau mea i ka ʻoiaʻiʻo

  • ua hāʻule ka hapa hewa i kahi kokoke i 0
  • Ua hala ka 90 pakeneka o ka hana maʻamau
  • ua piʻi nui ka wikiwiki o ka hoʻokō

UKU, F5Y, ACY

Ua ʻōlelo wau ua lawa kekahi mau hiʻohiʻona e hoʻomaopopo i ke ʻano o ka hana.
Eia kahi pōkole (a ʻoiaʻiʻo hoʻi i hoʻololi ʻia) o ka mea i hana ʻia i kaʻu hana.

Pane = hoʻolaha Phola Alto mai Yaml = Palo Alto mai Yaml
F5Y = hoʻolaha F5 mai Yaml = F5 mai Yaml (hiki koke mai)
ACY = hoʻolaha ACi mai Yaml = F5 mai Yaml

E hoʻohui au i kekahi mau huaʻōlelo e pili ana iā ACY (ʻaʻole e huikau me ACI).

ʻO ka poʻe i hana pū me ACI ʻike ʻo kēia hana mana (a ma ke ʻano maikaʻi hoʻi) ʻaʻole i hana ʻia e nā networkers :). Poina i nā mea a pau āu i ʻike ai e pili ana i ka pūnaewele - ʻaʻole pono ia iā ʻoe!
He mea hoʻonui liʻiliʻi, akā hōʻike ʻo ia i ka manaʻo aʻu i ʻike mau ai, no nā makahiki 3 i hala iho nei, e hana pū ana me ACI.

A i kēia hihia, ʻaʻole ʻo ACY kahi manawa kūpono e kūkulu ai i kahi kaʻina hoʻololi hoʻololi (ʻo ia ka mea nui i ka hihia o ACI, no ka mea, ʻo ia ke kikowaena a koʻikoʻi loa o kāu kikowaena data), akā hāʻawi pū kekahi iā ʻoe. he mea hoʻohana pono no ka hana ʻana i ka hoʻonohonoho.

Hoʻohana nā mea ʻenekinia ma kēia papahana iā Excel e hoʻonohonoho i ka ACI ma kahi o YAML no nā kumu like. Aia, ʻoiaʻiʻo, nā pōmaikaʻi o ka hoʻohana ʻana iā Excel:

  • kāu NIP i hoʻokahi faila
  • nā hōʻailona nani e ʻoluʻolu i ka mea kūʻai ke nānā aku
  • hiki iā ʻoe ke hoʻohana i kekahi mau mea hana excel

Akā aia hoʻokahi hapa, a i koʻu manaʻo ua ʻoi aku ia ma mua o nā pono. ʻOi aku ka paʻakikī o ka mālama ʻana i nā hoʻololi a me ka hoʻonohonoho ʻana i ka hana hui.

ʻO ACY kahi noi o nā ala like aʻu i hoʻohana ai no ka ʻaoʻao 3 e hoʻonohonoho i ka ACI.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka