{"id":87282,"date":"2020-07-06T13:44:51","date_gmt":"2020-07-06T11:44:51","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury"},"modified":"2021-02-01T11:41:48","modified_gmt":"2021-02-01T09:41:48","slug":"ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury","title":{"rendered":"Nga 'startup' n\u00eb mij\u00ebra server\u00eb n\u00eb dhjet\u00ebra Qendra t\u00eb t\u00eb Dh\u00ebnave. Si ndjek\u00ebm rritjen e infrastruktur\u00ebs Linux.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>N\u00ebse infrastruktura juaj IT po rritet shum\u00eb shpejt, nj\u00eb dit\u00eb do t\u00eb p\u00ebrballeni me zgjedhjen - t\u00eb rritni n\u00eb m\u00ebnyr\u00eb lineare burimet njer\u00ebzore p\u00ebr mb\u00ebshtetje ose t\u00eb filloni automatizimin. Deri n\u00eb nj\u00eb pik\u00eb, ne e kemi jetuar paradigm\u00ebn e par\u00eb, dhe pastaj filloi nj\u00eb rrug\u00eb e gjat\u00eb drejt Infrastructure-as-Code.<\/p>\n<p><img decoding=\"async\" alt=\"Nga &#039;startup&#039; n\u00eb mij\u00ebra server\u00eb n\u00eb dhjet\u00ebra Qendra t\u00eb t\u00eb Dh\u00ebnave. Si ndjek\u00ebm rritjen e infrastruktur\u00ebs Linux.\" src=\"\/wp-content\/uploads\/2020\/07\/adbcf170e3e0f794355eb1eb052585c1.jpg\" style=\"display:block;margin: 0 auto;\"><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nSigurisht, NSPK nuk \u00ebsht\u00eb nj\u00eb startup, por nj\u00eb atmosfer\u00eb e till\u00eb ka mbizot\u00ebruar n\u00eb kompani vitet e para t\u00eb ekzistenc\u00ebs, dhe k\u00ebto ishin shum\u00eb vite interesante. Emri im \u00ebsht\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/users\/dkorn\/\">Kornyakov Dmitry<\/a><\/noindex>, m\u00eb shum\u00eb se 10 vjet kam mb\u00ebshtetur infrastruktur\u00ebn Linux me k\u00ebrkesa t\u00eb larta p\u00ebr disponueshm\u00ebri. Kam mish\u00ebruar ekipit NSPK n\u00eb janar 2016 dhe, fatkeq\u00ebsisht, nuk isha prezent n\u00eb fillimin e ekzistenc\u00ebs s\u00eb kompanis\u00eb, por erdha n\u00eb nj\u00eb faz\u00eb t\u00eb ndryshimeve t\u00eb m\u00ebdha.<\/p>\n<p>N\u00eb p\u00ebrgjith\u00ebsi, mund t\u00eb thuhet se ekipi yn\u00eb ofron p\u00ebr kompanin\u00eb 2 produkte. E para - infrastruktura. E-mail duhet t\u00eb funksionoj\u00eb, DNS t\u00eb operoj\u00eb, dhe kontrolluesit e domenit t\u00eb lejojn\u00eb qasjen n\u00eb server\u00ebt, t\u00eb cil\u00ebt nuk duhet t\u00eb mbeten jasht\u00eb funksioni. Peizazhi IT i kompanis\u00eb \u00ebsht\u00eb i madh! K\u00ebto jan\u00eb sisteme t\u00eb r\u00ebnd\u00ebsishme p\u00ebr biznesin dhe misionin, me k\u00ebrkesa p\u00ebr disponueshm\u00ebri disa prej tyre - 99,999. Produkti i dyt\u00eb - vet\u00eb server\u00ebt, fizik\u00eb dhe virtual\u00eb. Duhet t\u00eb kujdesemi p\u00ebr ato ekzistuese, nd\u00ebrsa t\u00eb reja duhet t\u00eb ofrohen rregullisht p\u00ebr klient\u00ebt nga shum\u00eb divizione. N\u00eb k\u00ebt\u00eb artikull dua t\u00eb theksoj se si ne zhvilluam infrastruktur\u00ebn, e cila \u00ebsht\u00eb p\u00ebrgjegj\u00ebse p\u00ebr ciklin e jet\u00ebs. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/sq\/server\/\"   title=\"servera\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1507\">servera<\/a>.<\/p>\n<p><b>Fillimi i rrug\u00ebs<\/b><\/p>\n<p>N\u00eb fillim t\u00eb rrug\u00ebs, steku yn\u00eb i teknologjis\u00eb dukej k\u00ebshtu:<br \/>\n<i>OS CentOS 7<br \/>\nKontrolluesit e domenit FreeIPA<br \/>\nAutomatizimi - Ansible(+Tower), Cobbler<\/i><\/p>\n<p>E gjith\u00eb kjo ishte e shp\u00ebrndar\u00eb n\u00eb 3 domain, t\u00eb shtrira n\u00eb disa qendra t\u00eb t\u00eb dh\u00ebnave. N\u00eb nj\u00eb qend\u00ebr t\u00eb t\u00eb dh\u00ebnave - sistemet zyrtare dhe poligonet testuese, nd\u00ebrsa n\u00eb t\u00eb tjerat PROD.<\/p>\n<p>Krijimi i server\u00ebve n\u00eb nj\u00eb moment dukej k\u00ebshtu:<\/p>\n<p><img decoding=\"async\" alt=\"Nga &#039;startup&#039; n\u00eb mij\u00ebra server\u00eb n\u00eb dhjet\u00ebra Qendra t\u00eb t\u00eb Dh\u00ebnave. Si ndjek\u00ebm rritjen e infrastruktur\u00ebs Linux.\" src=\"\/wp-content\/uploads\/2020\/07\/2cc6209276489dc6e9d1bf46236d3785.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>N\u00eb shabllonin VM CentOS minimal dhe minimumin e nevojsh\u00ebm si\u00e7 \u00ebsht\u00eb nj\u00eb \/etc\/resolv.conf i sakt\u00eb, e gjith\u00eb pjesa tjet\u00ebr vjen p\u00ebrmes Ansible.<\/p>\n<p>CMDB - Excel.<\/p>\n<p>N\u00ebse serveri \u00ebsht\u00eb fizik, at\u00ebher\u00eb n\u00eb vend t\u00eb kopjimit t\u00eb makin\u00ebs virtuale mbi t\u00eb instalohej OS me ndihm\u00ebn e Cobbler - n\u00eb konfigurimin e Cobbler shtohen adresat MAC t\u00eb serverit t\u00eb synuar, serveri merr adres\u00ebn IP p\u00ebrmes DHCP, dhe m\u00eb pas instalohet OS.<\/p>\n<p>Fillimisht ne madje p\u00ebrpiqeshim t\u00eb b\u00ebnim ndonj\u00eb menaxhim konfiguracionesh n\u00eb Cobbler. Por me kalimin e koh\u00ebs, kjo filloi t\u00eb sillte probleme me portabilitetin e konfigurimeve si n\u00eb qendrat e tjera t\u00eb t\u00eb dh\u00ebnave ashtu edhe n\u00eb kodin Ansible p\u00ebr p\u00ebrgatitjen e VM-ve.<\/p>\n<p>Ansible n\u00eb at\u00eb koh\u00eb shum\u00eb prej nesh e perceptonin si nj\u00eb zgjerim t\u00eb rehatsh\u00ebm t\u00eb Bash dhe nuk ishim t\u00eb kursyer mbi nd\u00ebrtimet q\u00eb p\u00ebrdorin shell, sed. N\u00eb p\u00ebrgjith\u00ebsi, Bashsible. Kjo n\u00eb fund sillte n\u00eb fakt se, n\u00ebse nj\u00eb playbook p\u00ebr ndonj\u00eb arsye nuk punonte n\u00eb server, ishte m\u00eb e leht\u00eb t\u00eb fshije serverin, t\u00eb riparosh playbook-un dhe ta drejtoje p\u00ebrs\u00ebri. Nuk kishte ndonj\u00eb versionim t\u00eb skenareve, n\u00eb thelb, as portabilitet t\u00eb konfigurimeve.<\/p>\n<p>P\u00ebr shembull, ne d\u00ebshiruam t\u00eb ndryshonim ndonj\u00eb konfigurim n\u00eb t\u00eb gjith\u00eb server\u00ebt:<\/p>\n<ol>\n<li>Ndryshojm\u00eb konfigurimin n\u00eb server\u00ebt ekzistues n\u00eb segmentin logjik\/qendrat e t\u00eb dh\u00ebnave. Ndonj\u00ebher\u00eb jo p\u00ebr nj\u00eb dit\u00eb - k\u00ebrkesat p\u00ebr disponueshm\u00ebri dhe ligji i numrave t\u00eb m\u00ebdhenj nuk lejojn\u00eb zbatimin e t\u00eb gjith\u00eb ndryshimeve nj\u00ebher\u00ebsh. Disa ndryshime jan\u00eb potencialisht shkat\u00ebrruese dhe k\u00ebrkojn\u00eb rinisjen e di\u00e7kaje - nga sh\u00ebrbimet deri te vet\u00eb OS.<\/li>\n<li>Korrigjojm\u00eb n\u00eb Ansible<\/li>\n<li>Korrigjojm\u00eb n\u00eb Cobbler<\/li>\n<li>P\u00ebrs\u00ebrisim N her\u00eb p\u00ebr \u00e7do segment logjik\/qendrat e t\u00eb dh\u00ebnave<\/li>\n<\/ol>\n<p>P\u00ebr q\u00eb t\u00eb gjitha ndryshimet t\u00eb kalojn\u00eb pa probleme, duhet t\u00eb merret parasysh shum\u00eb faktor\u00eb, nd\u00ebrsa ndryshimet ndodhin vazhdimisht.<\/p>\n<ul>\n<li>Rrjedha e kodit anbil dhe skedar\u00ebve t\u00eb konfigurimit<\/li>\n<li>Ndryshimi i praktikave m\u00eb t\u00eb mira t\u00eb brendshme<\/li>\n<li>Ndryshimet nga analiza e incidenteve\/aksidenteve<\/li>\n<li>Ndryshimi i standart\u00ebve t\u00eb siguris\u00eb, si t\u00eb brendshme ashtu edhe t\u00eb jashtme. P\u00ebr shembull, PCI DSS \u00e7do vit plot\u00ebsohet me k\u00ebrkesa t\u00eb reja<\/li>\n<\/ul>\n<p><b>Rritja e infrastruktur\u00ebs dhe fillimi i rrug\u00ebs<\/b><\/p>\n<p>Numri i server\u00ebve\/domain\u00ebve logjik\u00eb\/qendrave t\u00eb t\u00eb dh\u00ebnave po rritej, dhe me ta shfaqeshin gjithashtu numri i gabimeve n\u00eb konfigurime. N\u00eb nj\u00eb moment ne arrit\u00ebm n\u00eb tri drejtime, drejt t\u00eb cilave duhej zhvilluar menaxhimi i konfigurimeve:<\/p>\n<ol>\n<li>Automatizimi. Sa m\u00eb shum\u00eb t\u00eb jet\u00eb e mundur, duhet shmangur faktori njeri n\u00eb operacionet e p\u00ebrs\u00ebritura.<\/li>\n<li>P\u00ebrs\u00ebritshm\u00ebria. T\u00eb menaxhosh infrastruktur\u00ebn \u00ebsht\u00eb shum\u00eb m\u00eb e leht\u00eb kur ajo \u00ebsht\u00eb e parashikueshme. Konfigurimi i server\u00ebve dhe mjeteve p\u00ebr p\u00ebrgatitjen e tyre duhet t\u00eb jet\u00eb gjithandej i nj\u00ebjt\u00eb. Kjo \u00ebsht\u00eb gjithashtu e r\u00ebnd\u00ebsishme p\u00ebr ekipet produktive - aplikacioni duhet garantuar pas testimit q\u00eb t\u00eb kaloj\u00eb n\u00eb ambientin produktiv, i konfiguruar nj\u00ebsoj si testi.<\/li>\n<li>Thjesht\u00ebsia dhe transparenca n\u00eb b\u00ebrjen e ndryshimeve n\u00eb menaxhimin e konfigurimeve.<\/li>\n<\/ol>\n<p>Ishte e nevojshme t\u00eb shtonim disa mjete.<\/p>\n<p>Si depo p\u00ebr kodin zgjodh\u00ebm GitLab CE, jo n\u00eb vend t\u00eb fundit p\u00ebr shkak t\u00eb moduleve t\u00eb integruara CI\/CD.<\/p>\n<p>Depo p\u00ebr sekretet - Hashicorp Vault, gjithashtu p\u00ebr shkak t\u00eb API-s\u00eb s\u00eb shk\u00eblqyeshme.<\/p>\n<p>Testimi i konfigurations dhe ansible rol\u00ebve \u2013 Molecule+Testinfra. Testet zhvillohen shum\u00eb m\u00eb shpejt n\u00ebse lidhni mitogen me ansible. Paralelisht, kemi filluar t\u00eb shkruajm\u00eb CMDB ton\u00eb dhe orkestruesin p\u00ebr deploy automatik (n\u00eb imazh mbi Cobbler), por kjo \u00ebsht\u00eb nj\u00eb histori krejt tjet\u00ebr, p\u00ebr t\u00eb cilin n\u00eb t\u00eb ardhmen do t\u00eb flas\u00eb kolegu im dhe zhvilluesi kryesor i k\u00ebtyre sistemeve.<\/p>\n<p>Zgjedhja jon\u00eb:<\/p>\n<p><i>Molecule + Testinfra<br \/>\nAnsible + Tower + AWX<br \/>\nBota e Server\u00ebve + DITNET (Zhvillim i brendsh\u00ebm)<br \/>\nCobbler<br \/>\nGitlab + GitLab runner<br \/>\nHashicorp Vault<br \/>\n<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Nga &#039;startup&#039; n\u00eb mij\u00ebra server\u00eb n\u00eb dhjet\u00ebra Qendra t\u00eb t\u00eb Dh\u00ebnave. Si ndjek\u00ebm rritjen e infrastruktur\u00ebs Linux.\" src=\"\/wp-content\/uploads\/2020\/07\/e84263618966f757e76d0384c9da276d.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Dhe p\u00ebr ansible rol\u00ebt. Fillimisht kishte nj\u00eb, pas disa refaktorizimeve jan\u00eb b\u00ebr\u00eb 17. Rekomandoj kategorikisht t\u00eb ndahen monolit\u00ebt n\u00eb role idempotente, t\u00eb cilat mund t\u00eb \u00e7iklohen m\u00eb von\u00eb ve\u00e7mas, mund t\u00eb shtoni etiketa gjithashtu. Ne ndam\u00eb rolet sipas funksionalitetit \u2013 network, logging, packages, hardware, molecule etj. P\u00ebrndryshe, kemi ndjekur strategjin\u00eb e m\u00ebposhtme. Nuk insistoj q\u00eb kjo \u00ebsht\u00eb e vetmja e v\u00ebrtet\u00eb, por p\u00ebr ne e ka funksionuar.<\/p>\n<ul>\n<li><b>Kopjimi i server\u00ebve nga 'imazhi i art\u00eb' \u00ebsht\u00eb nj\u00eb e keqe!<\/b>Nga mang\u00ebsit\u00eb kryesore \u2013 ju nuk e dini ndonj\u00ebher\u00eb se n\u00eb \u00e7far\u00eb gjendje jan\u00eb imazhet aktualisht, dhe se \u00e7do ndryshim do t\u00eb shkoj\u00eb n\u00eb t\u00eb gjitha imazhet n\u00eb t\u00eb gjitha fermat e virtualizimit.<\/li>\n<li><b>P\u00ebrdorni skedar\u00ebt e konfigurimit n\u00eb minimum dhe dakordoni me nj\u00ebsit\u00eb e tjera q\u00eb ju jeni p\u00ebrgjegj\u00ebs p\u00ebr skedar\u00ebt e sistemit kryesor.<\/b>, p\u00ebr shembull:\n<ol>\n<li>L\u00ebreni \/etc\/sysctl.conf bosh, konfigurimet duhet t\u00eb jen\u00eb vet\u00ebm n\u00eb \/etc\/sysctl.d\/. Default-i juaj n\u00eb nj\u00eb skedar, personalizimi p\u00ebr aplikacionin n\u00eb nj\u00eb tjet\u00ebr.<\/li>\n<li>P\u00ebrdorni skedar\u00eb override p\u00ebr redaktimin e nj\u00ebsive systemd.<\/li>\n<\/ol>\n<\/li>\n<li><b>B\u00ebni skem\u00eb t\u00eb gjitha konfigurimet dhe vendosni ato t\u00ebr\u00ebsisht, sa m\u00eb shum\u00eb q\u00eb t\u00eb jet\u00eb e mundur, pa asnj\u00eb sed dhe t\u00eb ngjashme n\u00eb playbook.<\/b><\/li>\n<li><b>Duke refaktorizuar kodin e sistemit t\u00eb menaxhimit t\u00eb konfigurimeve:<\/b>\n<ol>\n<li>Ndani detyrat n\u00eb entitete logjike dhe rip\u00ebrkufizoni monolit n\u00eb role.<\/li>\n<li>P\u00ebrdorni linters! Ansible-lint, yaml-lint, etj.<\/li>\n<li>Ndryshoni qasjen! Pa bashsible. Duhet t\u00eb p\u00ebrshkruani gjendjen e sistemit.<\/li>\n<\/ol>\n<\/li>\n<li><b>P\u00ebr t\u00eb gjitha rolet Ansible duhet t\u00eb shkruhen teste n\u00eb molecule dhe \u00e7do dit\u00eb t\u00eb gjenerohen raportet.<\/b><\/li>\n<li>N\u00eb rastin ton\u00eb, pas p\u00ebrgatitjes s\u00eb testeve (t\u00eb cilat ishin m\u00eb shum\u00eb se 100) u gjet\u00ebn rreth 70000 gabime. Kemi korrigjuar p\u00ebr disa muaj.<img decoding=\"async\" alt=\"Nga &#039;startup&#039; n\u00eb mij\u00ebra server\u00eb n\u00eb dhjet\u00ebra Qendra t\u00eb t\u00eb Dh\u00ebnave. Si ndjek\u00ebm rritjen e infrastruktur\u00ebs Linux.\" src=\"\/wp-content\/uploads\/2020\/07\/afa87e6305ef99a7ed6bdab0bc78a433.jpg\" style=\"display:block;margin: 0 auto;\"><\/li>\n<\/ul>\n<p><b>Implementimi yn\u00eb<\/b><\/p>\n<p>Pra, rolet ansible ishin gati, t\u00eb skemuar dhe t\u00eb verifikuara me linters. Dhe madje git-\u00ebt u ngrit\u00ebn n\u00eb t\u00eb gjitha an\u00ebt. Por \u00e7\u00ebshtja e dor\u00ebzimit t\u00eb sigurt t\u00eb kodit n\u00eb segmente t\u00eb ndryshme mbeti e hapur. Vendos\u00ebm t\u00eb sinkronizojm\u00eb me skriptet. Duket k\u00ebshtu:<\/p>\n<p><img decoding=\"async\" alt=\"Nga &#039;startup&#039; n\u00eb mij\u00ebra server\u00eb n\u00eb dhjet\u00ebra Qendra t\u00eb t\u00eb Dh\u00ebnave. Si ndjek\u00ebm rritjen e infrastruktur\u00ebs Linux.\" src=\"\/wp-content\/uploads\/2020\/07\/7c850301b5838b295d75834374e09b9f.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Pas mb\u00ebrritjes s\u00eb ndryshimit, aktivizohet CI, krijohet nj\u00eb server testimi, skenohen rolet, testohet me molecule. N\u00ebse gjith\u00e7ka \u00ebsht\u00eb n\u00eb rregull, kodi shkon n\u00eb deg\u00ebn prodhuese. Por ne nuk e aplikojm\u00eb kodin e ri automatikisht n\u00eb server\u00ebt ekzistues. Kjo \u00ebsht\u00eb nj\u00eb lloj ndalese, q\u00eb \u00ebsht\u00eb e nevojshme p\u00ebr disponueshm\u00ebrin\u00eb e lart\u00eb t\u00eb sistemeve tona. Dhe kur infrastruktura b\u00ebhet e madhe, hyn n\u00eb loj\u00eb ligji i numrave t\u00eb m\u00ebdhenj \u2013 madje edhe n\u00ebse jeni t\u00eb sigurt se ndryshimi \u00ebsht\u00eb i pad\u00ebmsh\u00ebm, ai mund t\u00eb \u00e7oj\u00eb n\u00eb pasojat t\u00eb pak\u00ebndshme.<\/p>\n<p>Ka shum\u00eb mund\u00ebsi p\u00ebr krijimin e server\u00ebve. Ne, p\u00ebrfundimisht, zgjodh\u00ebm skriptet e personalizuara n\u00eb Python. Dhe p\u00ebr CI ansible:<\/p>\n<pre><code class=\"json\">- name: create1.yml - Krijoni nj\u00eb VM nga nj\u00eb template\n  vmware_guest:\n    hostname: \"{{datacenter}}\".domain.ru\n    username: \"{{ username_vc }}\"\n    password: \"{{ password_vc }}\"\n    validate_certs: no\n    cluster: \"{{cluster}}\"\n    datacenter: \"{{datacenter}}\"\n    name: \"{{ name }}\"\n    state: poweredon\n    folder: \"\/{{folder}}\"\n    template: \"{{template}}\"\n    customization:\n      hostname: \"{{ name }}\"\n      domain: domain.ru\n      dns_servers:\n        - \"{{ ipa1_dns }}\"\n        - \"{{ ipa2_dns }}\"\n    networks:\n      - name: \"{{ network }}\"\n        type: static\n        ip: \"{{ip}}\"\n        netmask: \"{{netmask}}\"\n        gateway: \"{{gateway}}\"\n        wake_on_lan: True\n        start_connected: True\n        allow_guest_control: True\n    wait_for_ip_address: yes\n    disk:\n      - size_gb: 1\n        type: thin\n        datastore: \"{{datastore}}\"\n      - size_gb: 20\n        type: thin\n        datastore: \"{{datastore}}\"<\/code><\/pre>\n<p>Kjo \u00ebsht\u00eb ajo ku kemi mb\u00ebrritur, sistemi vazhdon t\u00eb jetoj\u00eb dhe t\u00eb zhvillohet.<\/p>\n<ul>\n<li>17 ansible-rol\u00ebsh p\u00ebr konfigurimin e serverit. \u00c7do rol \u00ebsht\u00eb i dedikuar p\u00ebr t\u00eb zgjidhur nj\u00eb detyr\u00eb logjike t\u00eb ve\u00e7ant\u00eb (logimi, auditi, autorizimi i p\u00ebrdoruesve, monitorimi, etj.).<\/li>\n<li>Testimi i rol\u00ebve. Molecule + TestInfra.<\/li>\n<li>Zhvillim i brendsh\u00ebm: CMDB + Orkestrues.<\/li>\n<li>Koha e krijimit t\u00eb serverit ~30 minuta, automatizuar dhe pothuajse nuk varet nga radh\u00ebt e detyrave.<\/li>\n<li>Gjasht\u00eb t\u00eb nj\u00ebjta e t\u00eb em\u00ebrtimit t\u00eb infrastruktur\u00ebs n\u00eb t\u00eb gjitha segmentet \u2013 playbook, repository, elemente virtualizimi.<\/li>\n<li>Kontroll i p\u00ebrditsh\u00ebm i gjendjes s\u00eb server\u00ebve me gjenerimin e raporteve p\u00ebr diferencat me standardet.<\/li>\n<\/ul>\n<p>Shpresoj q\u00eb historia ime t\u00eb jet\u00eb e dobishme p\u00ebr ata q\u00eb jan\u00eb n\u00eb fillim t\u00eb rrug\u00ebs. Cili \u00ebsht\u00eb steki i automatizimit q\u00eb p\u00ebrdorni ju?<\/p>\n<p>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/nspk\/blog\/509460\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0415\u0441\u043b\u0438 \u0432\u0430\u0448\u0430 IT \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0440\u0430\u0441\u0442\u0451\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u044b\u0441\u0442\u0440\u043e, \u0432\u044b \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0451\u0442\u0435\u0441\u044c \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u2013 \u043b\u0438\u043d\u0435\u0439\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u043b\u044e\u0434\u0441\u043a\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043d\u0430 \u0435\u0451 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0438\u043b\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e. \u0414\u043e \u043a\u0430\u043a\u043e\u0433\u043e-\u0442\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u043c\u044b \u0436\u0438\u043b\u0438 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c\u0435, \u0430 \u043f\u043e\u0442\u043e\u043c \u043d\u0430\u0447\u0430\u043b\u0441\u044f \u0434\u043e\u043b\u0433\u0438\u0439 \u043f\u0443\u0442\u044c \u043a Infrastructure-as-Code. \u0420\u0430\u0437\u0443\u043c\u0435\u0435\u0442\u0441\u044f, \u041d\u0421\u041f\u041a \u2013 \u043d\u0435 \u0441\u0442\u0430\u0440\u0442\u0430\u043f, \u043d\u043e \u0442\u0430\u043a\u0430\u044f \u0430\u0442\u043c\u043e\u0441\u0444\u0435\u0440\u0430 \u0446\u0430\u0440\u0438\u043b\u0430 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0432 \u043f\u0435\u0440\u0432\u044b\u0435 \u0433\u043e\u0434\u044b \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044f, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":87283,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-87282","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0415\u0441\u043b\u0438 \u0432\u0430\u0448\u0430 IT \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0440\u0430\u0441\u0442\u0451\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u044b\u0441\u0442\u0440\u043e, \u0432\u044b \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0451\u0442\u0435\u0441\u044c \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u2013 \u043b\u0438\u043d\u0435\u0439\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u043b\u044e\u0434\u0441\u043a\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043d\u0430 \u0435\u0451 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0438\u043b\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041e\u0442 \u201c\u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0430\u201d \u0434\u043e \u0442\u044b\u0441\u044f\u0447 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432 \u0434\u0435\u0441\u044f\u0442\u043a\u0435 \u0426\u041e\u0414. \u041a\u0430\u043a \u043c\u044b \u0433\u043d\u0430\u043b\u0438\u0441\u044c \u0437\u0430 \u0440\u043e\u0441\u0442\u043e\u043c Linux \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0415\u0441\u043b\u0438 \u0432\u0430\u0448\u0430 IT \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0440\u0430\u0441\u0442\u0451\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u044b\u0441\u0442\u0440\u043e, \u0432\u044b \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0451\u0442\u0435\u0441\u044c \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u2013 \u043b\u0438\u043d\u0435\u0439\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u043b\u044e\u0434\u0441\u043a\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043d\u0430 \u0435\u0451 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0438\u043b\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-07-06T11:44:51+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-02-01T09:41:48+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Nga \u201cstartup\u201d n\u00eb mij\u00ebra server\u00eb n\u00eb dhjet\u00eb DC. Si ndoq\u00ebm rritjen e infrastruktur\u00ebs Linux | ProHoster","description":"N\u00ebse infrastruktura juaj IT po rritet shum\u00eb shpejt, n\u00eb nj\u00eb moment do t\u00eb p\u00ebrballeni me zgjedhjen \u2013 t\u00eb rrisni p\u00ebrkat\u00ebsisht burimet njer\u00ebzore p\u00ebr mb\u00ebshtetje ose t\u00eb filloni automatizimin.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041e\u0442 \u201c\u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0430\u201d \u0434\u043e \u0442\u044b\u0441\u044f\u0447 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0432 \u0434\u0435\u0441\u044f\u0442\u043a\u0435 \u0426\u041e\u0414. \u041a\u0430\u043a \u043c\u044b \u0433\u043d\u0430\u043b\u0438\u0441\u044c \u0437\u0430 \u0440\u043e\u0441\u0442\u043e\u043c Linux \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b | ProHoster","og:description":"\u0415\u0441\u043b\u0438 \u0432\u0430\u0448\u0430 IT \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0440\u0430\u0441\u0442\u0451\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u044b\u0441\u0442\u0440\u043e, \u0432\u044b \u0440\u0430\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0437\u0434\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0451\u0442\u0435\u0441\u044c \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u2013 \u043b\u0438\u043d\u0435\u0439\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c \u043b\u044e\u0434\u0441\u043a\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043d\u0430 \u0435\u0451 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0438\u043b\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e.","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/ot-startapa-do-tysyach-serverov-v-desyatke-czod-kak-my-gnalis-za-rostom-linux-infrastruktury","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-07-06T11:44:51+00:00","article:modified_time":"2021-02-01T09:41:48+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"87282","title":null,"description":"","keywords":"","keyphrases":null,"primary_term":null,"canonical_url":"","og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 13:55:30","updated":"2026-02-09 16:50:33","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/87282","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=87282"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/87282\/revisions"}],"predecessor-version":[{"id":158751,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/87282\/revisions\/158751"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/87283"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=87282"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=87282"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=87282"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}