Talaan ng nilalaman[Tago][Ipakita]
- 1. Ano ang ibig mong sabihin sa DevOps?
- 2. Maglista ng ilang prinsipyo ng DevOps?
- 3. Ilista ang ilan sa mga pinakasikat na tool ng DevOps?
- 4. Ano ang imprastraktura bilang code?
- 5. Ipaliwanag ang lifecycle ng DevOps?
- 6. Ano ang pamamahala ng pagsasaayos?
- 7. Ano ang mga pangunahing bentahe ng DevOps?
- 8. Ano ang mga pakinabang ng paggamit ng Version Control System?
- 9. Ano ang git stash?
- 10. Ano ang CI/CD?
- 11. Ano ang pipeline ng CI/CD?
- 12. Ano ang Patuloy na Pagsusuri?
- 13. Paano naiiba ang DevOps sa Agile?
- 14. Maaari mo bang pangalanan ang ilang pangunahing tagapagpahiwatig ng pagganap (KPI) na ginagamit upang sukatin ang tagumpay ng DevOps?
- 15 Magpangalan ng ilang cloud platform na ginagamit para ipatupad ang DevOps?
- 16. Paano nauugnay ang AWS sa DevOps?
- 17. Sa AWS DevOps, ano nga ba ang CodePipeline?
- 18. Ano nga ba ang CodeBuild sa AWS DevOps?
- 19. Ano nga ba ang AWS Lambda sa konteksto ng AWS DevOps?
- 20. Aling mga programming framework ang tugma sa AWS CodeBuild?
- 21. Sa AWS DevOps, ano ang mga microservice?
- 22. Anong papel ang ginagampanan ng Amazon QuickSight sa AWS DevOps?
- 23. Sa AWS DevOps, paano nakikipag-ugnayan ang mga container ng Kubernetes?
- 24. Ano ang hybrid cloud sa AWS DevOps?
- 25. Ano ang Ansible?
- 26. Ano ang layunin ng selenium?
- 27. Ano ang Selenium Grid at ano ang ginagawa nito?
- 28. Ano ang Selenium IDE?
- 29. Sa DevOps, ano ang ibig mong sabihin sa Puppet?
- 30. Para gawing mas makapangyarihan ang Puppet, anong open source o community tools ang ginagamit mo?
- 31. Ipaliwanag ang arkitektura ng master-slave ni Jenkins?
- 32. Paano mailipat o makokopya ang Jenkins mula sa isang server patungo sa isa pa?
- 33. Banggitin ang ilang mga plugin ng Jenkins na kapaki-pakinabang?
- 34. Ano ang Nagios?
- 35. Paano gumagana ang Nagios?
- 36. Ano nga ba ang Nagios Log Server?
- 37. Ano ang State Stalking sa Nagios?
- 38. Ano ba talaga ang mga lalagyan?
- 39. Ano nga ba ang imahe ng Docker?
- 40. Ano nga ba ang isang lalagyan ng Docker?
- 41. Ano ang layunin ng isang Dockerfile?
- 42. Ano nga ba ang 'Pair Programming?
- 43. Ano nga ba ang Chef?
- 44. Ano nga ba ang Blue/Green Deployment Pattern?
- 45. Ano ang Memcached?
- 46. Ano ang mga tampok ng Memcached?
- 47. Magbigay ng ilang kapaki-pakinabang na tool sa pagsubaybay sa network?
- 48. Ano ang ilan sa mga hadlang sa pagtatatag ng pipeline ng DevOps?
- 49. Ano nga ba ang layunin ng Secure Shell?
- 50. Ano nga ba ang CBD?
- Konklusyon
Ang Development & Operations ang pinaninindigan ng DevOps.
Isa itong bagong uri ng software development na binago ang paraan ng paggawa at pagpapalaganap ng software. Ang diskarteng DevOps ay inuuna ang madalas, incremental na pag-upgrade kaysa sa madalang na malalaking set ng feature.
Tinutulungan ng DevOps ang mga pagpapatakbo ng IT.
Bago ang DevOps, ang mga kawani ng IT ay kailangang harapin ang ilang mga isyu.
Bilang resulta, ang departamento ng IT ay sumailalim sa ilang hindi kanais-nais na pagsisiyasat. Nagbago ang lahat sa pagpapakilala ng DevOps, na nagpapahintulot sa mga pagpapatakbo ng IT na ipaalam ang kanilang mga alalahanin sa iba pang bahagi ng negosyo, na nagreresulta sa pinahusay na transparency at pakikipagtulungan sa pagitan ng mga operasyon ng IT at iba pang mga departamento.
Kung nagsimula ka nang maghanda para sa pagpapaunlad at mga responsibilidad sa pagpapatakbo sa negosyong IT, alam mo na na mahirap pasukin ang propesyon.
Isinasaalang-alang mo ba ang isang karera sa DevOps?
Kung iyon ang kaso, napunta ka sa tamang lugar.
Narito ang ilan sa mga pinakamadalas na itanong sa mga tanong at sagot sa panayam ng DevOps para tulungan ka sa iyong paghahanda para sa mga karera ng DevOps sa industriya.
1. Ano ang ibig mong sabihin sa DevOps?
Ang Development and Operations (DevOps) ay dalawang termino na kadalasang ginagamit nang palitan. Isa itong diskarte sa software engineering na nakatuon sa pagsasama-sama ng development at operations teams para i-automate ang proyekto sa bawat antas.
Pinapasimple ng diskarteng ito na i-automate ang pamamahala ng serbisyo ng proyekto upang maabot ang mga layunin sa pagpapatakbo at mas maunawaan ang teknolohiyang ginagamit sa kapaligiran ng produksyon.
Ang diskarte na ito ay batay sa maliksi na pamamaraan at binibigyang-diin ang komunikasyon ng koponan, pamamahala ng mapagkukunan, at pakikipagtulungan.
2. Maglista ng ilang prinsipyo ng DevOps?
Ang DevOps ay batay sa mga sumusunod na prinsipyo:
- Patuloy na deployment
- Pag-aautomat
- Pagsubaybay
- Katiwasayan
- Imprastraktura bilang code
3. Ilista ang ilan sa mga pinakasikat na tool ng DevOps?
Ang pinakamadalas na ginagamit na mga tool ng DevOps ay:
- pumunta
- Ansible
- Manggagawa sa pantalan
- Siliniyum
- Puppet
- Punong tagapagluto
- Jenkins
4. Ano ang imprastraktura bilang code?
Ang imprastraktura bilang code, o IaC, ay isang software-based na IT technique na nagco-code at nagpapanatili ng pinagbabatayan na IT infrastructure. Sa halip na manu-manong i-configure ang hiwalay na mga hardware device at operating system, ang imprastraktura bilang code ay nagbibigay-daan sa mga developer at operations team na awtomatikong pamahalaan, subaybayan, at magbigay ng mga mapagkukunan.
5. Ipaliwanag ang lifecycle ng DevOps?
Ang DevOps ay nahahati sa anim na yugto. Ang mga yugto nito ay sumusunod sa isang tiyak na cycle.
Gayunpaman, walang yugto na nahahati sa mga hangganan, at walang yugtong magsisimula kahit na ang nauna ay ganap na natapos. Tingnan natin ang yugto ng ikot ng DevOps ngayon.
- Pagpaplano – Ang Kasama sa paunang bahagi ng lifecycle ng DevOps ang pagpaplano at pagbuo ng software. Ang yugtong ito ay nangangailangan ng lubusang pag-unawa sa proyekto upang makamit ang panghuling layunin sa trabaho ng mga miyembro nito. Pinapakain din nito ang iba't ibang yugto ng pag-unlad at operasyon. Mahalaga rin na makatanggap ang mga organisasyon ng pagsasanay sa mga tool at sukatan upang magkaroon ng malinaw na larawan ng pamamahala ng proyekto.
- Pag-unlad – Sa panahon ng sa yugtong ito, ang proyekto ay binuo sa pamamagitan ng pagdidisenyo ng imprastraktura, pagbuo ng code, pagtatatag ng mga pagsubok, o paggamit ng proseso ng automation. Ang ebidensya ay kritikal sa yugtong ito. Upang pamahalaan ang mga application at aktibidad ng data, ang mga developer ay nagse-save ng code sa isang code manager, na nagbibigay-daan para sa pagtingin, pag-bersyon, at marami pa.
- Patuloy na Pagsasama – Ito Ang hakbang ay nag-automate sa mga mekanismo ng pagpapatunay at pagsubok. Mayroon itong natatanging feature na ginagarantiyahan na ang development environment ay wastong na-configure bago ilabas sa isang serbisyo na pinagsama ito sa iba pang mga app.
- Automated Deployment – DevOps hinihikayat ang paggamit ng mga tool at script upang i-automate ang mga deployment, na may pinakalayunin na i-automate ang buong proseso sa pag-activate ng isang feature. Ang paglitaw ng cloud, bilang isang code na nag-uudyok sa paglipat mula sa may hangganan na pamamahala sa imprastraktura patungo sa permanenteng pamamahala sa pag-optimize ng gastos, ang pinakamahalagang bahagi ng panahong ito.
- Operasyon – Lahat Ang mga pagpapatakbo ng DevOps ay karaniwang patuloy na ginagawa sa buong buhay ng software dahil sa dynamic na katangian ng imprastraktura. Posible ang pagbabago, availability, at scalability sa platform na ito.
- Pagsubaybay – Ito ay isang tuluy-tuloy na yugto sa proseso ng DevOps. Sinusubaybayan at sinusuri ng DevOps ang data na nagpapakita ng kasalukuyang estado ng application.
6. Ano ang pamamahala ng pagsasaayos?
Ang pamamahala ng configuration (CM) ay isang proseso ng paghawak ng mga pagbabago sa isang sistematikong paraan upang mapapanatili ang integridad ng system sa buong panahon.
Nangangailangan ito ng isang hanay ng mga panuntunan, estratehiya, proseso, at tool para sa pagtatasa, pamamahala, at pagsubaybay sa mga panukala sa pagbabago, pati na rin ang pag-iingat ng kinakailangang dokumentasyon. Nag-aambag ang CM sa disenyo at pagbuo ng programa sa pamamagitan ng pagbibigay ng administratibo at teknikal na patnubay.
7. Ano ang mga pangunahing bentahe ng DevOps?
Ang mga sumusunod ay ang pangunahing bentahe ng DevOps:
Mga kalamangan sa mga tuntunin ng teknolohiya
- Mga problemang hindi kasing hirap lutasin
- Ang paghahatid ng software sa tuluy-tuloy na batayan
- Ang mga depekto ay natutukoy nang mas maaga at naitama nang mas mabilis.
Mga kalamangan sa kumpanya
- Mga operating environment na stable
- Ang mga tampok ay naihatid nang mas mabilis.
- Ang pakikipagtulungan at komunikasyon sa pagitan ng mga koponan ay bumuti.
8. Ano ang mga pakinabang ng paggamit ng Version Control System?
- Maayos na inaayos ng VCS ang lahat ng nakaraang bersyon at variation.
- Maaaring tingnan ng lahat ng empleyado ang file anumang oras gamit ang Kontrol ng bersyon System (VCS). Pinapayagan din nito ang lahat ng mga pagbabago na ginawa sa isang karaniwang bersyon na pagsamahin.
- Ito ay nilalayong tulungan ang maraming indibidwal sa pamamagitan ng pagpayag sa kanila na makipagtulungan sa mga text file, na ginagawang napakasimple ng pagbabahagi sa pagitan ng ilang mga makina.
- Napakahalaga para sa mga papel na nangangailangan ng maraming muling pag-redraft at pag-edit, dahil lumilikha ito ng papel na trail para sa muling pagbalangkas at pag-update ng mga huling edisyon.
- Binibigyang-daan nito ang lahat ng miyembro ng koponan na tingnan ang buong kasaysayan ng proyekto, na nagpapahintulot sa amin na gamitin ang imbakan ng sinumang kasama sa koponan kung sakaling magkaroon ng pagkabigo sa gitnang server.
9. Ano ang git stash?
Ang git stash command ay pansamantalang nagse-save ng mga pagbabago sa gumaganang direktoryo. Nagbibigay ito ng malinis na kapaligiran sa pagtatrabaho para sa mga developer. Maaari nilang gamitin ang git procedure upang pagsamahin ang mga pagbabago. Ang mga pagbabago sa mga sinusubaybayang file ay pinagsama sa gumaganang direktoryo kapag ang command na ito ay ginanap. Sa git directory, ang git stash command ay maaaring gamitin ng ilang beses. Ito ay isang imbakan para sa git.
10. Ano ang CI/CD?
Patuloy na Pagsasama Ang (CI) ay isang paraan ng pag-develop kung saan dapat isama ng mga developer ang code sa isang karaniwang repository nang maraming beses bawat araw. Ang isang awtomatikong build ay nagpapatunay sa bawat pag-check-in, na nagbibigay-daan sa mga koponan na makita ang mga problema nang maaga.
Patuloy na deployment ay isang software engineering technique na gumagamit ng automated deployment para mag-alok ng functionality ng produkto. Tinutulungan nito ang mga tester sa pagtukoy kung tama at matatag ang mga pagbabago sa codebase.
11. Ano ang pipeline ng CI/CD?
Ang proseso ng paghahatid ng software ay awtomatiko sa pamamagitan ng pipeline ng CI/CD. Bumubuo ito ng code, gumagawa ng mga pagsubok, at tinutulungan ka sa wastong pag-deploy ng bagong bersyon ng software. Tinatanggal ng pipeline ng CI/CD ang mga pagkakamali ng tao, nagbibigay ng feedback sa mga developer, at nagbibigay-daan sa mabilis na pag-ulit ng produkto. Ang pipeline ng CI/CD ay nag-o-automate at sinusubaybayan ang lifecycle ng pagbuo ng produkto ng software. Sinasaklaw nito ang buong proseso, mula sa pagsasama at pagsubok hanggang sa paghahatid at pag-deploy. Ang CI/CD pipeline ay tumutukoy sa mga magkakaugnay na aktibidad na ito.
12. Ano ang Patuloy na Pagsusuri?
Ang Continuous Testing ay ang proseso ng pagsasagawa ng mga automated na pagsubok bilang bahagi ng pipeline ng paghahatid ng software upang mag-alok ng real-time na feedback sa mga panganib sa negosyo sa pinakahuling release. Ang bawat build ay patuloy na sinusubok sa ganitong paraan upang maiwasan ang mga paghihirap sa step-switching sa ikot ng buhay ng paghahatid ng Software at upang payagan ang mga Development team na makatanggap ng mabilis na feedback. Ito ay humahantong sa isang malaking pakinabang sa pagiging produktibo ng isang developer dahil ang lahat ng mga pagsubok ay hindi na kailangang muling patakbuhin pagkatapos ng bawat pag-update at muling pagbuo ng proyekto.
13. Paano naiiba ang DevOps sa Agile?
Ang DevOps ay isang paraan o kultura na nagbibigay-daan sa mga development at operations team na magtulungan upang bumuo ng mga matagumpay na produkto. Ang tuluy-tuloy na pag-unlad, pagsasama-sama, pagsubok, pag-deploy, at pagsubaybay sa siklo ng SDLC ay ilan sa mga diskarte na maaaring magamit upang magawa ito. Para sa isang matagumpay na paglulunsad ng produkto, nilalayon ng DevOps na tulay ang agwat sa pagitan ng mga developer at mga operasyon.
Ang Agile ay isang proseso ng pagbuo ng software na binibigyang-diin ang incremental, umuulit, at mabilis na paglabas ng produkto ng software habang isinasama ang input ng kliyente. Tinutulay ng diskarteng ito ang agwat sa pagitan ng kaalaman ng mga kliyente at developer sa mga kinakailangan.
14. Maaari mo bang pangalanan ang ilang pangunahing tagapagpahiwatig ng pagganap (KPI) na ginagamit upang sukatin ang tagumpay ng DevOps?
Ang mga Key Performance Indicator, o KPI, ay isang uri ng sukatan na sumusukat kung gaano kahusay ang ginagawa ng isang bagay. Ang mga sumusunod ay ilan sa mga madalas na ginagamit na KPI para sa pagsukat ng tagumpay ng DevOps:
- Mga tiket ng customer
- Ang matagumpay na dalas at oras ng pag-deploy
- Mga rate ng error/Pagkabigo
- Mga nabigong deployment
- Paggamit ng application, pagganap, at trapiko
- Porsiyento ng Pass ng Automated Test Case.
- Pagkakaroon ng Application
- Baguhin ang mga kahilingan sa dami
- Pansamantala sa pagtuklas (MTTD)
- Pansamantala sa pagbawi (MTTR)
15 Magpangalan ng ilang cloud platform na ginagamit para ipatupad ang DevOps?
Ang mga sumusunod ay ilan sa mga pinakasikat na cloud computing platform para sa pagpapatupad ng DevOps:
- Amazon Web Services
- Google Cloud
- Azure
16. Paano nauugnay ang AWS sa DevOps?
Ang Amazon Web Services (AWS) ay isang cloud service platform na ginagawang simple ang mga prinsipyo ng DevOps na ipatupad.
Ang mga ibinigay na solusyon ay lubos na makakatulong sa mga koponan sa pamamahala ng mga kumplikadong setting at mga inhinyero sa matagumpay na pagtatrabaho sa mataas na bilis na ibinigay ng DevOps.
17. Sa AWS DevOps, ano nga ba ang CodePipeline?
Nag-aalok ang AWS ng CodePipeline bilang isang serbisyo para sa patuloy na pagsasama at paghahatid.
Kasama rin dito ang mga pagbabago sa imprastraktura. Sa itinatag na mga protocol ng modelo ng paglabas na tinukoy ng isang user, ang mga pagpapatakbo tulad ng pagbuo, pagsubok, at pag-deploy pagkatapos ng bawat build ay naging medyo simple.
Tinitiyak ng CodePipeline na ang mga bagong pag-upgrade ng software at mga tampok ay naihahatid nang maaasahan at mabilis.
18. Ano nga ba ang CodeBuild sa AWS DevOps?
Ang AWS ay nagbibigay ng CodeBuild, isang ganap na pinamamahalaang in-house na serbisyo ng build na tumutulong sa source code compilation, pagsubok, at pagbuo ng mga ready-to-deploy na software packages. Hindi na kailangan para sa pangangasiwa, paglalaan, o paglalaan dahil ang mga build server ay awtomatikong na-scale.
Ang mga pagpapatakbo ng build ay isinasagawa nang magkatulad sa mga server, na nagbibigay ng pinakamalaking benepisyo ng hindi kinakailangang mag-iwan ng anumang mga build na naghihintay sa isang pila.
19. Ano nga ba ang AWS Lambda sa konteksto ng AWS DevOps?
Ang AWS Lambda ay isang serbisyo sa pag-compute na nagbibigay-daan sa mga customer na magpatakbo ng mga programa nang hindi tahasang nagbibigay o namamahala ng mga server.
Maaaring magpatakbo ang mga user ng anumang piraso ng code para sa kanilang mga app o serbisyo gamit ang AWS Lambda nang walang nakaraang pagsasama. Ito ay kasing simple ng pagsusumite ng isang piraso ng code at hayaan ang Lambda na pangasiwaan ang lahat ng iba pang kinakailangan upang mapatakbo at mapalago ito.
20. Aling mga programming framework ang tugma sa AWS CodeBuild?
Kasama sa AWS CodeBuild ang Python, Ruby, Java, Android, Docker, Node.js, at Go environment.
Sa pamamagitan ng pagsisimula at pagbuo ng imahe ng Docker, maaari ding gumawa ng pasadyang kapaligiran. Pagkatapos ay itutulak ito sa mga rehistro ng EC2 o DockerHub. Ito ay pagkatapos ay ginagamit upang sumangguni sa larawan sa build project ng mga user.
21. Sa AWS DevOps, ano ang mga microservice?
Ang mga arkitektura ng microservice ay mga pamamaraan para sa pagdidisenyo ng isang aplikasyon bilang isang koleksyon ng mga serbisyo.
Ang bawat isa sa mga serbisyong ito ay may sariling istraktura ng proseso at nakikipag-ugnayan sa iba sa pamamagitan ng isang tinukoy na interface na parehong magaan at simpleng gamitin. Ang karamihan ng komunikasyong ito ay ginagawa sa pamamagitan ng mga query sa HTTP at API.
22. Anong papel ang ginagampanan ng Amazon QuickSight sa AWS DevOps?
Ang Amazon QuickSight ay isang tool ng AWS Business Analytics na ginagawang simple upang lumikha ng mga visualization, magsagawa ng pagsusuri, at makakuha ng mga insight sa negosyo mula sa mga natuklasan.
Ito ay isang mabilis at ganap na cloud-based na serbisyo na nagbibigay sa mga user ng ilang mga opsyon upang matuklasan at gamitin ito.
23. Sa AWS DevOps, paano nakikipag-ugnayan ang mga container ng Kubernetes?
Sa Kubernetes, isang item na kilala bilang pod ang ginagamit para mag-map sa pagitan ng mga container.
Sa anumang oras, ang isang pod ay maaaring maglaman ng higit sa isang lalagyan. Dahil sa flat network hierarchy ng pod, ang pakikipag-ugnayan sa pagitan ng mga pod na ito sa overlay na network ay simple.
24. Ano ang hybrid cloud sa AWS DevOps?
Ang hybrid cloud ay isang computing environment na pinagsasama ang pribado at pampublikong ulap.
Maaaring buuin ang mga hybrid na ulap sa pamamagitan ng paglalagay ng VPN tunnel sa pagitan ng cloud VPN at ng nasa nasasakupan na network. Maaari ding iwasan ng AWS Direct Connect ang Internet at kumonekta nang secure sa pagitan ng VPN at isang data center.
25. Ano ang Ansible?
Ang Ansible ay isang cross-platform na computer support automation program na simpleng gamitin ngunit napakalakas.
Ito ay partikular na idinisenyo para sa mga propesyonal sa IT, na gumagamit nito para sa pag-deploy ng application, workstation at pag-upgrade ng server, cloud provisioning, pamamahala ng configuration, intra-service orchestration, at halos lahat ng iba pa. administrator ng system gumaganap sa isang lingguhan o araw-araw na batayan.
Ang Ansible ay simpleng i-install dahil hindi ito nangangailangan ng anumang software ng ahente o iba pang imprastraktura ng seguridad.
26. Ano ang layunin ng selenium?
Ginagamit ang selenium sa DevOps para sa patuloy na pagsubok. Nakatuon ang tool sa functional at regression testing.
27. Ano ang Selenium Grid at ano ang ginagawa nito?
Ang layunin ng isang Selenium Grid ay upang patakbuhin ang pareho o magkaibang mga script ng pagsubok sa maraming platform at browser upang magawa ang distributed testing. Tumutulong ito sa pagsubok sa iba't ibang mga sitwasyon at may kapasidad na bawasan ang oras ng pagpapatupad.
28. Ano ang Selenium IDE?
Ang Selenium integrated development environment (IDE) ay nagbibigay ng one-stop-shop para sa Selenium script development. Available din ito bilang extension ng Firefox at maaaring gamitin sa pag-debug, pagbabago, at pag-record ng mga pagsubok.
Kasama sa Selenium IDE ang buong Selenium Core, na nagpapahintulot sa amin na i-replay at i-record ang mga pagsubok sa magkatulad na konteksto kung saan tatakbo ang mga ito. Dahil sa kakayahang umangkop upang mabilis na ilipat ang mga tagubilin sa paligid at ang autocomplete na suporta, ang Selenium IDE ay ang pinakamagandang kapaligiran para sa pagsusulat ng mga pagsubok sa Selenium, independyente sa uri ng pagsubok na gusto namin.
29. Sa DevOps, ano ang ibig mong sabihin sa Puppet?
Ito ay isang programa sa pamamahala ng pagsasaayos para sa pag-automate ng mga tungkuling pang-administratibo. Gumagamit ang Puppet ng arkitektura ng Master-Slave, kung saan nakikipag-usap ang dalawang entity sa pamamagitan ng isang naka-encrypt na channel. Ang mga administrator ng system ay may pananagutan para sa iba't ibang mga paulit-ulit na tungkulin, kabilang ang pag-install at pag-configure ng mga server.
Posibleng magsulat ng mga script upang i-automate ang mga naturang aktibidad, ngunit nagiging mahirap ito kapag malawak ang imprastraktura. Ang pamamahala ng configuration ay isang mahusay na solusyon. Mga tulong sa puppet sa pagsasaayos, pag-deploy, at pamamahala ng mga server.
Hindi lamang nito pinapadali ang mga paulit-ulit na trabaho, ngunit nakakatipid din ito ng malaking dami ng oras sa pangkalahatan.
30. Para gawing mas makapangyarihan ang Puppet, anong open source o community tools ang ginagamit mo?
Ginagamit si Jira upang subaybayan ang mga pagbabago at kahilingan, at pinamamahalaan namin ang mga ito sa pamamagitan ng panloob na pamamaraan.
Pagkatapos, alinsunod sa pinakamahuhusay na kagawian, ginagamit namin ang Git at Puppet's Code Manager app upang pamahalaan ang Puppet code. Bilang karagdagan, ginagamit namin ang tuluy-tuloy na integration pipeline ng Jenkins at ang beaker testing framework para maisagawa ang lahat ng aming Puppet update.
31. Ipaliwanag ang arkitektura ng master-slave ni Jenkins?
- Sa tuwing may code commit, kinukuha ng Jenkins master ang code mula sa malayong GitHub repository.
- Hinahati nito ang gawain sa lahat ng mga alipin ni Jenkins.
- Ang mga alipin ay nagsasagawa, nagtatayo, sumusubok, at gumagawa ng mga resulta ng pagsubok sa kahilingan ng master ng Jenkins.
32. Paano mailipat o makokopya ang Jenkins mula sa isang server patungo sa isa pa?
Magsisimula ako sa pamamagitan ng paglilipat ng direktoryo ng mga trabaho mula sa luma patungo sa bagong server. Mayroong iba pang mga opsyon na magagamit, na inilista ko sa ibaba:
Ito ay posible na:
- Ilipat lang ang katugmang direktoryo ng trabaho mula sa isang pag-install ng Jenkins patungo sa isa pa upang ilipat ang isang trabaho.
- Gumawa ng isang clone ng isang direktoryo ng trabaho na may bagong pangalan upang ma-duplicate ang isang kasalukuyang trabaho.
- Ang isang direktoryo ay maaaring palitan ng pangalan upang palitan ang pangalan ng isang umiiral na gawain. Kung papalitan mo ang pangalan ng isang trabaho, ang anumang iba pang trabaho na sumusubok na tawagan ang pinalitan ng pangalan na trabaho ay dapat ding palitan ang pangalan.
33. Banggitin ang ilang mga plugin ng Jenkins na kapaki-pakinabang?
Nagsama ako ng ilang mahahalagang plugin sa ibaba:
- Kopyahin ang artifact
- sumali
- Mga Green Ball
- Maven 2 proyekto
- Amazon EC2
- HTML publisher
34. Ano ang Nagios?
Isa sa mga tool sa pagsubaybay ay Nagios. Sa isang kultura ng DevOps, ginagamit ito para sa patuloy na pagsubaybay sa mga system, application, serbisyo, at proseso ng negosyo, bukod sa iba pang mga bagay.
Sa kaso ng isang pagkabigo, maaaring abisuhan ng Nagios ang mga teknikal na empleyado, na nagpapahintulot sa kanila na simulan ang pag-troubleshoot bago maapektuhan ang mga operasyon ng negosyo, mga end-user, o mga customer.
Hindi mo kailangang ipaliwanag kung bakit nakakaapekto ang hindi natukoy na pagkasira ng imprastraktura sa ilalim ng linya ng iyong kumpanya gamit ang Nagios.
35. Paano gumagana ang Nagios?
Ang Nagios ay isang server-based na monitoring system na gumagana bilang isang daemon o serbisyo. Nagi-execute ang Nagios ng mga plugin sa parehong server nang regular, at nakikipag-ugnayan sila sa mga host o server sa iyong network o sa internet. Maaaring gamitin ang web interface upang tingnan ang impormasyon ng katayuan.
Kung may mangyari, maaari ka ring maabisuhan sa pamamagitan ng email o SMS. Ang Nagios daemon ay gumagana tulad ng isang scheduler, na nagpapatupad ng mga programa sa mga partikular na oras. Nai-save nito ang output ng mga script na iyon at nagpapatakbo ng mga bago kung magbabago ang output.
36. Ano nga ba ang Nagios Log Server?
Pinapadali ng Nagios Log Server ang pagtingin sa data ng log. Ang pagse-set up ng mga alarma, babala kapag may posibilidad na lumitaw ang mga panganib, simpleng paghahanap ng data ng log, at mabilis na pag-audit sa anumang system ang lahat ng bagay na higit sa lahat ng Nagios Log Server.
Matatanggap namin ang lahat ng aming data ng log sa isang lugar na may mataas na kakayahang magamit gamit ang Nagios Log Server.
37. Ano ang State Stalking sa Nagios?
Ito ay ginagamit upang subaybayan ang mga bagay. Kapag pinagana ang Stalking para sa isang host o serbisyo, babantayan ng Nagios ang host o serbisyong iyon at mapapansin ang anumang pagbabagong mapapansin nito sa output ng mga resulta ng pagsusuri.
Maaari mo ring sabihin, "Maaari itong maging kapaki-pakinabang sa isang kasunod na pagsusuri ng mga log file," depende sa pag-uusap ninyo at ng tagapanayam. Ang kinalabasan ng isang host o service check ay iniuulat lamang sa karaniwang mga pangyayari kung ang host o serbisyo ay nagbago ng status mula noong naunang pagsusuri."
38. Ano ba talaga ang mga lalagyan?
Ang mga lalagyan ay ginagamit upang lumikha ng isang pare-parehong kapaligiran sa pag-compute mula sa laptop ng isang developer hanggang sa isang kapaligirang pansubok, pagkatapos ay sa produksyon. Ang container ay isang pakete na naglalaman ng isang buong runtime environment: isang program, pati na rin ang lahat ng mga dependency, library, iba pang bahagi, at configuration file nito na kinakailangan upang maisagawa ito.
Ang mga pagkakaiba sa mga pamamahagi ng OS at pagsuporta sa imprastraktura ay inaalis sa pamamagitan ng paglalagay ng container sa platform ng application at mga dependency nito.
39. Ano nga ba ang imahe ng Docker?
Ang lalagyan ng Docker ay nagmula sa isang imahe ng Docker. Upang ilagay ito sa ibang paraan, ang mga imahe ng Docker ay ginagamit upang bumuo ng mga lalagyan. Ang mga imahe ay binuo gamit ang build command, at kapag tumakbo, sila ay bubuo ng isang lalagyan. Ang isang registry ng Docker, tulad ng registry.hub.docker.com, ay nag-iimbak ng mga larawan.
Ang mga imahe ay sinadya upang mabuo ng mga layer ng iba pang mga larawan dahil maaari silang lumaki nang malaki, na nagbibigay-daan para sa kaunting halaga ng data na maihatid habang nagpapadala ng mga imahe sa network.
40. Ano nga ba ang isang lalagyan ng Docker?
Kasama sa mga lalagyan ng Docker ang programa at lahat ng mga dependency nito, ngunit ibinabahagi nila ang kernel sa iba pang mga lalagyan at nagpapatakbo bilang hiwalay na mga proseso sa espasyo ng gumagamit sa host OS. Ang mga docker container ay hindi nangangailangan ng anumang espesyal na imprastraktura upang tumakbo: maaari silang tumakbo sa anumang makina, sa anumang imprastraktura, at sa anumang ulap.
Maaari kang bumuo ng mga lalagyan ng Docker sa pamamagitan ng paggawa ng isang imahe ng Docker at pagkatapos ay isagawa ito, o sa pamamagitan ng paggamit ng mga imahe ng Docker mula sa Dockerhub. Ang mga lalagyan ng Docker ay mahalagang mga runtime na larawan ng Docker.
41. Ano ang layunin ng isang Dockerfile?
Maaaring basahin ng Docker ang mga tagubilin mula sa isang Dockerfile at awtomatikong bumuo ng mga larawan para sa iyo.
Ang Dockerfile ay isang text file na naglalaman ng lahat ng mga command na magagamit ng isang user upang lumikha ng isang imahe mula sa command line. Ang mga user ay maaaring gumamit ng docker build upang i-automate ang isang build na gumaganap ng maraming command-line na mga tagubilin sa isang hilera.
42. Ano nga ba ang 'Pair Programming?
Ang pair programming ay isang engineering approach kung saan ang dalawang programmer ay nagtutulungan sa parehong sistema, disenyo, at code.
Sumusunod sila sa mga prinsipyo ng "Extreme Programming." Sa kasong ito, ang isang programmer ay tinutukoy bilang "driver," habang ang isa ay tinutukoy bilang "tagamasid," na patuloy na nagsusuri sa pag-unlad ng proyekto upang matuklasan ang anumang karagdagang mga paghihirap.
43. Ano nga ba ang Chef?
Ito ay isang matatag na platform ng automation na nagko-convert ng imprastraktura sa code. Maaari mong gamitin ang tool na ito upang lumikha ng mga script na nag-o-automate ng mga pagpapatakbo.
44. Ano nga ba ang Blue/Green Deployment Pattern?
Ang blue-green na pattern ay isang tuluy-tuloy na deployment, pamamaraan ng paglabas ng application na tumutuon sa unti-unting paglipat ng trapiko ng user mula sa dating functional na bersyon ng programa o serbisyo patungo sa halos magkaparehong bagong release - parehong bersyon na tumatakbo sa produksyon.
Ang asul na kapaligiran ay kumakatawan sa nakaraang bersyon ng programa, habang ang berdeng kapaligiran ay kumakatawan sa kasalukuyang bersyon. Ang trapiko ng produksyon ay unti-unting ililipat mula sa isang asul patungo sa isang berdeng kapaligiran, at sa sandaling ganap na mailipat, ang asul na kapaligiran ay pananatilihin na naka-hold lamang sa kaso ng isang kinakailangan ng rollback.
45. Ano ang Memcached?
Ang Memcached ay isang distributed memory object caching technology na ganap na libre at open-source. Ito ay karaniwang ginagamit sa dynamic mga aplikasyon ng web upang pamahalaan ang memorya sa pamamagitan ng pag-cache ng data sa RAM. Binabawasan nito ang bilang ng beses na kailangang i-query ang mga panlabas na mapagkukunan. Ang pagbabawas ng pag-load ng database ay nakakatulong din sa pagpapabilis ng mga dynamic na online na aplikasyon.
46. Ano ang mga tampok ng Memcached?
Narito ang ilan sa mga pinakakilalang katangian ng Memcached:
- Ang mga na-update na bagay ay iniimbak gamit ang CAS Token.
- Upang gawing mas nababasa ang code, ginagamit ang mga callback.
- Bawasan ang oras ng pagtugon o ang oras na kinakailangan para sa resulta sa pamamagitan ng paggamit ng GetDelayed.
- Upang magamit sa bagong kliyente, lumikha ng isang binary protocol.
- Para sa paggamit na may kumplikadong data, isang opsyon ng Igbinary data ang inaalok.
47. Magbigay ng ilang kapaki-pakinabang na tool sa pagsubaybay sa network?
Ang mga sumusunod ay ilan sa mga pinakasikat na tool sa pagsubaybay sa network:
- Splunk
- Icinga 2
- Wireshark
- Nagios
- OpenNMS
48. Ano ang ilan sa mga hadlang sa pagtatatag ng pipeline ng DevOps?
Sa panahong ito ng mga teknolohikal na pagsabog, ang DevOps ay nagpapakita ng iba't ibang isyu. Kadalasan, may kinalaman ito sa paglilipat ng data at mabilis na pagsasama ng bagong functionality. Kung nabigo ang paglipat ng data, maaaring maging hindi matatag ang system, na maaaring humantong sa mga problema sa hinaharap.
Gayunpaman, sa loob ng CI system, maaari itong pangasiwaan sa pamamagitan ng paggamit ng feature flag, na tumutulong sa mga incremental na paglabas ng produkto. Ito, kasama ang feature na rollback, ay makakatulong na mabawasan ang ilan sa mga isyu.
49. Ano nga ba ang layunin ng Secure Shell?
Ang SSH ay karaniwang ginagamit upang i-link ang dalawang computer at patakbuhin ang mga ito nang malayuan. Ang SSH ay kadalasang ginagamit ng operations team dahil ang operations team ay haharap sa mga gawaing mangangailangan ng malayuang pag-access sa admin system.
Gagamitin din ng mga developer ang SSH, bagama't sa isang maliit na lawak kaysa sa operations team dahil sila ay nagtatrabaho sa mga lokal na system sa karamihan ng oras. Gaya ng naunang sinabi, ang mga DevOps development at operations team ay makikipag-ugnayan at magtutulungan.
Gagamitin ang SSH kapag nakatagpo ng isyu ang operations team at nangangailangan ng tulong mula sa development team.
50. Ano nga ba ang CBD?
Ang CBD, na kilala rin bilang Component-Based Creation, ay isang bagong paraan ng pagbuo ng produkto.
Sa halip na magsimula sa simula, ang mga developer sa diskarteng ito ay palaging naghahanap ng mga umiiral nang mahusay na tinukoy, nasubok, at nakumpirma na mga bahagi upang bumuo at mag-assemble sa isang produkto.
Konklusyon
Kumpleto na ngayon ang Mga Nangungunang Mga Tanong at Sagot sa Panayam sa DevOps. Ang DevOps ay mahalaga hindi lamang para sa pagpapabilis ng pagbuo ng software, ngunit para din sa pagpapabuti ng kalidad ng software.
Naghahatid ang DevOps ng bagong saloobin, maliksi na diskarte, at matalinong teknolohiya sa talahanayan, na lahat ay nagtutulungan upang makamit ang layuning iyon. Maaari ding tumulong ang DevOps sa pagtuklas ng mga error sa code, pagbutihin ang komunikasyon ng team, at bawasan ang kabuuang halaga ng software development.
Mag-iwan ng Sagot