차례[숨다][보여 주다]
- 1. DevOps는 무엇을 의미합니까?
- 2. DevOps의 몇 가지 원칙을 나열하십시오.
- 3. DevOps의 가장 인기 있는 도구를 나열하십시오.
- 4. 코드로서의 인프라란 무엇입니까?
- 5. DevOps 수명 주기를 설명하시겠습니까?
- 6. 구성 관리란 무엇입니까?
- 7. DevOps의 주요 이점은 무엇입니까?
- 8. 버전 관리 시스템을 사용하면 어떤 이점이 있습니까?
- 9. git stash 란 무엇입니까?
- 10. CI/CD란 무엇입니까?
- 11. CI/CD 파이프라인이란 무엇입니까?
- 12. 연속 테스트란 무엇입니까?
- 13. DevOps는 Agile과 어떻게 다릅니까?
- 14. DevOps 성공을 측정하는 데 사용되는 몇 가지 핵심 성과 지표(KPI)를 말할 수 있습니까?
- 15 DevOps를 구현하는 데 활용되는 몇 가지 클라우드 플랫폼의 이름을 말하십시오.
- 16. AWS는 DevOps와 어떤 관련이 있습니까?
- 17. AWS DevOps에서 CodePipeline이란 정확히 무엇입니까?
- 18. AWS DevOps에서 CodeBuild는 정확히 무엇입니까?
- 19. AWS DevOps의 맥락에서 AWS Lambda는 정확히 무엇입니까?
- 20. AWS CodeBuild와 호환되는 프로그래밍 프레임워크는 무엇입니까?
- 21. AWS DevOps에서 마이크로서비스란 무엇입니까?
- 22. Amazon QuickSight는 AWS DevOps에서 어떤 역할을 합니까?
- 23. AWS DevOps에서 Kubernetes 컨테이너는 어떻게 통신합니까?
- 24. AWS DevOps에서 하이브리드 클라우드란 무엇입니까?
- 25. 앤서블이란?
- 26. 셀레늄의 목적은 무엇입니까?
- 27. Selenium Grid란 무엇이며 어떤 역할을 합니까?
- 28. 셀레늄 IDE란 무엇입니까?
- 29. DevOps에서 Puppet은 무엇을 의미합니까?
- 30. Puppet을 더 강력하게 만들기 위해 어떤 오픈 소스 또는 커뮤니티 도구를 사용합니까?
- 31. Jenkins의 마스터-슬레이브 아키텍처를 설명합니까?
- 32. Jenkins는 어떻게 한 서버에서 다른 서버로 이동하거나 복사할 수 있습니까?
- 33. 유익한 몇 가지 Jenkins 플러그인을 언급하시겠습니까?
- 34. 나기오스란?
- 35. Nagios는 어떻게 작동합니까?
- 36. Nagios 로그 서버는 정확히 무엇입니까?
- 37. 나기오스의 스테이트 스토킹이란?
- 38. 컨테이너란 정확히 무엇입니까?
- 39. Docker 이미지란 정확히 무엇입니까?
- 40. Docker 컨테이너란 정확히 무엇입니까?
- 41. Dockerfile의 목적은 무엇입니까?
- 42. '쌍 프로그래밍'이란 정확히 무엇입니까?
- 43. 셰프란 정확히 무엇인가요?
- 44. 블루/그린 배포 패턴이란 정확히 무엇입니까?
- 45. Memcached란 무엇입니까?
- 46. Memcached의 기능은 무엇입니까?
- 47. 몇 가지 유용한 네트워크 모니터링 도구의 이름을 말씀해 주십시오.
- 48. DevOps 파이프라인을 구축하는 데 장애물이 있습니까?
- 49. Secure Shell의 목적은 정확히 무엇입니까?
- 50. CBD는 정확히 무엇입니까?
- 결론
개발 및 운영은 DevOps의 약자입니다.
소프트웨어를 만들고 배포하는 방식을 바꾼 새로운 유형의 소프트웨어 개발입니다. DevOps 기술은 드물게 발생하는 대규모 기능 세트보다 빈번한 점진적 업그레이드를 우선시합니다.
DevOps는 IT 운영을 돕습니다.
DevOps 이전에 IT 직원은 여러 문제를 처리해야 했습니다.
그 결과 IT 부서는 원치 않는 조사를 받게 되었습니다. 이 모든 것이 DevOps의 도입으로 바뀌었습니다. 이를 통해 IT 운영이 나머지 비즈니스와 우려 사항을 전달할 수 있어 IT 운영과 다른 부서 간의 투명성과 협력이 향상되었습니다.
IT 비즈니스에서 개발 및 운영 책임을 준비하기 시작했다면 이 직업이 진입하기 어려운 직업이라는 것을 이미 알고 있을 것입니다.
DevOps에서의 경력을 고려하고 있습니까?
그렇다면 제대로 찾아오셨습니다.
다음은 업계에서 DevOps 경력을 준비하는 데 도움이 되는 가장 자주 묻는 DevOps 인터뷰 질문과 답변입니다.
1. DevOps는 무엇을 의미합니까?
개발 및 운영(DevOps)은 종종 같은 의미로 사용되는 두 가지 용어입니다. 개발 및 운영 팀을 모아 모든 수준에서 프로젝트를 자동화하는 데 중점을 둔 소프트웨어 엔지니어링 접근 방식입니다.
이 기술을 사용하면 프로젝트 서비스 관리를 간단하게 자동화하여 운영 목표를 달성할 수 있고 생산 환경에서 활용되는 기술 스택을 더 잘 이해할 수 있습니다.
이 전략은 애자일 방법론을 기반으로 하며 팀 커뮤니케이션, 리소스 관리 및 협업을 강조합니다.
2. DevOps의 몇 가지 원칙을 나열하십시오.
DevOps는 다음 원칙을 기반으로 합니다.
- 지속적인 배포
- 자동화
- 모니터링
- 보안
- 코드형 인프라
3. DevOps의 가장 인기 있는 도구를 나열하십시오.
가장 자주 사용되는 DevOps 도구는 다음과 같습니다.
- 힘내
- 책임감있는
- 도커
- 셀레니움
- 인형
- 요리사
- 젠킨스
4. 코드로서의 인프라란 무엇입니까?
IaC(Infrastructure as Code)는 기본 IT 인프라를 코드화하고 유지 관리하는 소프트웨어 기반 IT 기술입니다. 별도의 하드웨어 장치와 운영 체제를 수동으로 구성하는 대신 코드로서의 인프라를 통해 개발자와 운영 팀은 리소스를 자동으로 관리, 모니터링 및 제공할 수 있습니다.
5. DevOps 수명 주기를 설명하시겠습니까?
DevOps는 XNUMX단계로 나뉩니다. 그 단계는 특정 주기를 따릅니다.
단, 경계로 구분된 페이즈는 없으며, 이전 페이즈가 완전히 종료되어도 페이즈가 시작되지 않습니다. 이제 DevOps 주기 단계를 자세히 살펴보겠습니다.
- 기획 – 더 DevOps 수명 주기의 초기 부분에는 계획 및 소프트웨어 개발이 포함됩니다. 이 단계에서는 구성원의 최종 작업 목표를 달성하기 위해 프로젝트를 철저히 이해합니다. 이것은 또한 개발 및 운영의 다양한 단계를 제공합니다. 또한 조직이 프로젝트 관리에 대한 명확한 그림을 얻기 위해 도구 및 메트릭에 대한 교육을 받는 것이 중요합니다.
- 개발 – 동안 이 단계에서 프로젝트는 인프라 설계, 코드 개발, 테스트 설정 또는 자동화 프로세스를 사용하여 구성됩니다. 이 단계에서 증거가 중요합니다. 애플리케이션 및 데이터 활동을 관리하기 위해 개발자는 코드 관리자에 코드를 저장하여 보기, 버전 관리 등을 수행할 수 있습니다.
- 지속적인 통합 – 이 단계는 검증 및 테스트 메커니즘을 자동화합니다. 이것은 다른 앱과 결합하는 서비스로 출시되기 전에 개발 환경이 올바르게 구성되었음을 보장하는 고유한 기능을 가지고 있습니다.
- 자동화된 배포 – DevOps 기능 활성화로 전체 프로세스를 자동화하는 궁극적인 목표와 함께 도구와 스크립트를 사용하여 배포를 자동화하도록 권장합니다. 유한한 인프라 관리에서 영구적인 비용 최적화 관리로의 전환을 강제하는 코드로서의 클라우드의 출현은 이 시기의 가장 필수적인 구성 요소입니다.
- 운영 – 모두 DevOps 작업은 일반적으로 인프라의 동적 특성으로 인해 소프트웨어 수명 동안 지속적으로 수행됩니다. 이 플랫폼에서는 변환, 가용성 및 확장성이 모두 가능합니다.
- 모니터링 – 이 DevOps 프로세스의 연속 단계입니다. DevOps는 애플리케이션의 현재 상태를 보여주는 데이터를 추적하고 분석합니다.
6. 구성 관리란 무엇입니까?
구성 관리(CM)는 시스템의 무결성이 시간이 지남에 따라 유지되도록 체계적인 방식으로 변경을 처리하는 프로세스입니다.
여기에는 변경 제안을 평가, 관리 및 모니터링하고 필요한 문서를 보존하기 위한 일련의 규칙, 전략, 프로세스 및 도구가 수반됩니다. CM은 관리 및 기술 지침을 제공하여 프로그램의 설계 및 개발에 기여합니다.
7. DevOps의 주요 이점은 무엇입니까?
DevOps의 주요 이점은 다음과 같습니다.
기술적인 면에서 장점
- 해결하기 어렵지 않은 문제들
- 지속적인 소프트웨어 제공
- 결함을 더 일찍 감지하고 더 빨리 수정합니다.
회사의 장점
- 안정적인 운영 환경
- 기능이 더 빨리 제공됩니다.
- 팀 간의 협업 및 커뮤니케이션이 향상되었습니다.
8. 버전 관리 시스템을 사용하면 어떤 이점이 있습니까?
- VCS는 모든 이전 버전과 변형을 깔끔하게 정리합니다.
- 모든 직원은 언제든지 파일을 볼 수 있습니다. 버전 관리 시스템(VCS). 또한 공통 버전에서 수행된 모든 수정 사항을 함께 병합할 수 있습니다.
- 이는 여러 개인이 텍스트 파일에 대해 공동 작업을 수행할 수 있도록 하여 여러 컴퓨터 간의 공유를 매우 간단하게 함으로써 도움을 주기 위한 것입니다.
- 최종 판을 다시 작성하고 업데이트하기 위한 종이 흔적을 생성하기 때문에 많은 재작성 및 편집이 필요한 논문의 경우 중요합니다.
- 이를 통해 모든 팀 구성원이 전체 프로젝트 기록을 볼 수 있으므로 중앙 서버 오류 발생 시 팀원의 스토리지를 활용할 수 있습니다.
9. git stash 란 무엇입니까?
git stash 명령은 작업 디렉토리의 변경 사항을 임시로 저장합니다. 이는 개발자에게 깨끗한 작업 환경을 제공합니다. 그런 다음 git 프로시저를 사용하여 수정 사항을 병합할 수 있습니다. 이 명령이 수행되면 추적된 파일의 변경 사항이 작업 디렉토리에 병합됩니다. git 디렉토리에서 git stash 명령은 여러 번 사용할 수 있습니다. git 저장소입니다.
10. CI/CD란 무엇입니까?
지속적인 통합 (CI)는 개발자가 매일 여러 번 코드를 공통 저장소에 통합해야 하는 개발 방법입니다. 그런 다음 자동 빌드가 각 체크인을 검증하여 팀이 문제를 조기에 발견할 수 있도록 합니다.
지속적인 배포 자동화된 배포를 사용하여 제품 기능을 제공하는 소프트웨어 엔지니어링 기술입니다. 테스터가 코드베이스 수정이 적절하고 안정적인지 여부를 결정하는 데 도움이 됩니다.
11. CI/CD 파이프라인이란 무엇입니까?
소프트웨어 제공 프로세스는 CI/CD 파이프라인을 통해 자동화됩니다. 코드를 생성하고 테스트를 수행하며 새 소프트웨어 버전을 적절하게 배포하는 데 도움을 줍니다. CI/CD 파이프라인은 사람의 실수를 제거하고 개발자에게 피드백을 제공하며 신속한 제품 반복을 가능하게 합니다. CI/CD 파이프라인은 소프트웨어 제품의 개발 수명 주기를 자동화하고 모니터링합니다. 통합 및 테스트에서 전달 및 배포에 이르는 전체 프로세스를 다룹니다. CI/CD 파이프라인은 이러한 상호 연결된 활동을 나타냅니다.
12. 연속 테스트란 무엇입니까?
지속적인 테스트는 최신 릴리스에서 비즈니스 위험에 대한 실시간 피드백을 제공하기 위해 소프트웨어 제공 파이프라인의 일부로 자동화된 테스트를 수행하는 프로세스입니다. 모든 빌드는 소프트웨어 제공 수명 주기에서 단계 전환의 어려움을 피하고 개발 팀이 신속한 피드백을 받을 수 있도록 이러한 방식으로 지속적으로 테스트됩니다. 이는 각 업데이트 및 프로젝트 재구축 후에 더 이상 모든 테스트를 다시 실행할 필요가 없기 때문에 개발자의 생산성이 크게 향상됩니다.
13. DevOps는 Agile과 어떻게 다릅니까?
DevOps는 개발 팀과 운영 팀이 협력하여 성공적인 제품을 구축할 수 있도록 하는 방법 또는 문화입니다. SDLC 주기의 지속적인 개발, 통합, 테스트, 배포 및 모니터링은 이를 달성하는 데 사용할 수 있는 접근 방식 중 일부입니다. 성공적인 제품 출시를 위해 DevOps는 개발자와 운영 간의 격차를 해소하는 것을 목표로 합니다.
Agile은 클라이언트 입력을 통합하면서 점진적이고 반복적이며 빠른 소프트웨어 제품 릴리스를 강조하는 소프트웨어 개발 프로세스입니다. 이 접근 방식은 요구 사항에 대한 클라이언트와 개발자의 지식 사이의 격차를 해소합니다.
14. DevOps 성공을 측정하는 데 사용되는 몇 가지 핵심 성과 지표(KPI)를 말할 수 있습니까?
핵심 성과 지표(KPI)는 어떤 것이 얼마나 잘 하고 있는지를 측정하는 지표 유형입니다. 다음은 DevOps 성공을 측정하는 데 가장 자주 사용되는 KPI 중 일부입니다.
- 고객 티켓
- 성공적인 배포 빈도 및 시간
- 오류/실패율
- 실패한 배포
- 애플리케이션 사용량, 성능 및 트래픽
- 자동화된 테스트 케이스 통과 비율.
- 애플리케이션 가용성
- 볼륨 요청 변경
- 탐지 시간(MTTD)
- 복구 시간(MTTR)
15 DevOps를 구현하는 데 활용되는 몇 가지 클라우드 플랫폼의 이름을 말하십시오.
다음은 DevOps 구현을 위해 가장 널리 사용되는 클라우드 컴퓨팅 플랫폼입니다.
- Amazon Web Services
- Google 클라우드
- 하늘빛
16. AWS는 DevOps와 어떤 관련이 있습니까?
Amazon Web Services(AWS)는 DevOps 원칙을 구현하기 쉽게 만드는 클라우드 서비스 플랫폼입니다.
제공된 솔루션은 복잡한 설정을 관리하는 팀과 DevOps에서 제공하는 빠른 속도로 성공적으로 작업하는 엔지니어에게 큰 도움이 될 것입니다.
17. AWS DevOps에서 CodePipeline이란 정확히 무엇입니까?
AWS는 지속적인 통합 및 제공을 위해 CodePipeline을 서비스로 제공합니다.
여기에는 인프라 변경 사항도 포함됩니다. 사용자가 정의하는 확립된 릴리스 모델 프로토콜을 사용하면 각 빌드 후 빌드, 테스트 및 배포와 같은 작업이 비교적 간단해집니다.
CodePipeline은 새로운 소프트웨어 업그레이드 및 기능이 안정적이고 신속하게 제공되도록 보장합니다.
18. AWS DevOps에서 CodeBuild는 정확히 무엇입니까?
AWS는 소스 코드 컴파일, 테스트 및 바로 배포할 수 있는 소프트웨어 패키지 생성을 지원하는 완전 관리형 사내 빌드 서비스인 CodeBuild를 제공합니다. 빌드 서버가 자동으로 확장되기 때문에 관리, 할당 또는 프로비저닝이 필요하지 않습니다.
빌드 작업은 서버에서 병렬로 수행되므로 빌드를 대기열에서 기다리지 않아도 된다는 가장 큰 이점을 제공합니다.
19. AWS DevOps의 맥락에서 AWS Lambda는 정확히 무엇입니까?
AWS Lambda는 고객이 명시적으로 서버를 프로비저닝하거나 관리하지 않고도 프로그램을 실행할 수 있는 컴퓨팅 서비스입니다.
사용자는 이전 통합 없이 AWS Lambda를 사용하여 앱 또는 서비스에 대한 모든 코드를 실행할 수 있습니다. 코드 조각을 제출하고 Lambda가 이를 운영하고 성장시키는 데 필요한 다른 모든 것을 처리하도록 하는 것만큼 간단합니다.
20. AWS CodeBuild와 호환되는 프로그래밍 프레임워크는 무엇입니까?
AWS CodeBuild에는 Python, Ruby, Java, Android, Docker, Node.js 및 Go 환경이 포함됩니다.
Docker 이미지를 초기화하고 생성하여 맞춤형 환경도 생성할 수 있습니다. 그런 다음 EC2 또는 DockerHub 레지스트리로 푸시됩니다. 이것은 나중에 사용자의 빌드 프로젝트에서 그림을 참조하는 데 사용됩니다.
21. AWS DevOps에서 마이크로서비스란 무엇입니까?
마이크로서비스 아키텍처는 단일 애플리케이션을 서비스 모음으로 설계하기 위한 기술입니다.
이러한 각 서비스는 고유한 프로세스 구조를 가지고 있으며 가볍고 사용하기 쉬운 정의된 인터페이스를 통해 다른 서비스와 통신합니다. 이 통신의 대부분은 HTTP 및 API 쿼리를 통해 수행됩니다.
22. Amazon QuickSight는 AWS DevOps에서 어떤 역할을 합니까?
Amazon QuickSight는 시각화를 생성하고, 분석을 수행하고, 결과에서 비즈니스 통찰력을 도출하는 작업을 간단하게 해주는 AWS 비즈니스 분석 도구입니다.
사용자에게 검색하고 사용할 수 있는 여러 옵션을 제공하는 빠르게 진행되는 완전한 클라우드 기반 서비스입니다.
23. AWS DevOps에서 Kubernetes 컨테이너는 어떻게 통신합니까?
Kubernetes에서 Pod로 알려진 항목은 컨테이너 간 매핑에 활용됩니다.
주어진 시간에 포드는 둘 이상의 컨테이너를 담을 수 있습니다. 포드의 평면 네트워크 계층 구조로 인해 오버레이 네트워크에서 이러한 포드 간의 통신은 간단합니다.
24. AWS DevOps에서 하이브리드 클라우드란 무엇입니까?
하이브리드 클라우드는 프라이빗 클라우드와 퍼블릭 클라우드를 결합한 컴퓨팅 환경입니다.
클라우드 VPN과 온프레미스 네트워크 사이에 VPN 터널을 삽입하여 하이브리드 클라우드를 구축할 수 있습니다. AWS Direct Connect는 또한 인터넷을 우회하고 VPN과 데이터 센터 간에 안전하게 연결할 수 있습니다.
25. 앤서블이란?
Ansible은 사용이 간편하면서도 매우 강력한 크로스 플랫폼 컴퓨터 지원 자동화 프로그램입니다.
애플리케이션 배포, 워크스테이션 및 서버 업그레이드, 클라우드 프로비저닝, 구성 관리, 서비스 내 오케스트레이션 및 기타 거의 모든 것에 사용하는 IT 전문가를 위해 특별히 설계되었습니다. 시스템 관리자 매주 또는 매일 수행합니다.
Ansible은 에이전트 소프트웨어나 기타 보안 인프라가 필요하지 않기 때문에 설치가 간단합니다.
26. 셀레늄의 목적은 무엇입니까?
Selenium은 지속적인 테스트를 위해 DevOps에서 사용됩니다. 이 도구는 기능 및 회귀 테스트에 중점을 둡니다.
27. Selenium Grid란 무엇이며 어떤 역할을 합니까?
Selenium Grid의 목적은 분산 테스트를 수행하기 위해 여러 플랫폼과 브라우저에서 동일하거나 다른 테스트 스크립트를 실행하는 것입니다. 다양한 시나리오에서 테스트를 지원하고 실행 시간을 줄이는 기능이 있습니다.
28. 셀레늄 IDE란 무엇입니까?
Selenium IDE(통합 개발 환경)는 Selenium 스크립트 개발을 위한 원스톱 상점을 제공합니다. Firefox 확장으로도 사용할 수 있으며 테스트를 디버그, 변경 및 기록하는 데 사용할 수 있습니다.
Selenium IDE에는 전체 Selenium Core가 포함되어 있어 테스트가 실행될 동일한 컨텍스트에서 테스트를 재생하고 기록할 수 있습니다. 명령을 빠르게 전환할 수 있는 유연성과 자동 완성 지원으로 인해 Selenium IDE는 우리가 좋아하는 테스트 종류와 상관없이 Selenium 테스트를 작성하기 위한 최고의 환경입니다.
29. DevOps에서 Puppet은 무엇을 의미합니까?
관리 업무를 자동화하기 위한 구성 관리 프로그램입니다. Puppet은 두 엔티티가 암호화된 채널을 통해 통신하는 마스터-슬레이브 아키텍처를 사용합니다. 시스템 관리자는 서버 설치 및 구성을 포함하여 다양하고 반복적인 업무를 담당합니다.
이러한 활동을 자동화하는 스크립트를 작성하는 것이 가능하지만 인프라가 방대할 때는 이것이 어려워집니다. 구성 관리는 훌륭한 해결 방법입니다. Puppet은 서버의 구성, 배포 및 관리를 지원합니다.
반복적인 작업을 더 쉽게 만들 뿐만 아니라 전체적으로 상당한 시간을 절약할 수 있습니다.
30. Puppet을 더 강력하게 만들기 위해 어떤 오픈 소스 또는 커뮤니티 도구를 사용합니까?
Jira는 변경 사항 및 요청 사항을 추적하는 데 사용되며 내부 절차를 통해 관리합니다.
그런 다음 모범 사례에 따라 Git 및 Puppet의 Code Manager 앱을 사용하여 Puppet 코드를 관리합니다. 또한 Jenkins의 지속적 통합 파이프라인과 비커 테스트 프레임워크를 사용하여 모든 Puppet 업데이트를 수행합니다.
31. Jenkins의 마스터-슬레이브 아키텍처를 설명합니까?
- 코드 커밋이 있을 때마다 Jenkins 마스터는 원격 GitHub 리포지토리에서 코드를 검색합니다.
- 모든 Jenkins 슬레이브 간에 작업을 분할합니다.
- 슬레이브는 Jenkins 마스터의 요청에 따라 수행, 빌드, 테스트 및 테스트 결과를 생성합니다.
32. Jenkins는 어떻게 한 서버에서 다른 서버로 이동하거나 복사할 수 있습니까?
작업 디렉토리를 이전 서버에서 새 서버로 전송하는 것으로 시작하겠습니다. 아래에 나열된 다른 옵션을 사용할 수 있습니다.
가능하다:
- 한 Jenkins 설치에서 다른 설치로 일치하는 작업 디렉터리를 전송하기만 하면 작업을 이동할 수 있습니다.
- 기존 작업을 복제하려면 새 이름으로 작업 디렉토리의 복제본을 만듭니다.
- 디렉터리 이름을 변경하여 기존 작업의 이름을 바꿀 수 있습니다. 작업 이름을 바꾸면 이름이 바뀐 작업을 호출하려는 다른 작업도 이름을 바꿔야 합니다.
33. 유익한 몇 가지 Jenkins 플러그인을 언급하시겠습니까?
아래에 몇 가지 필수 플러그인을 포함했습니다.
- 아티팩트 복사
- 가입하기
- 그린 볼
- 메이븐 2 프로젝트
- Amazon EC2
- HTML 게시자
34. 나기오스란?
모니터링 도구 중 하나는 Nagios입니다. DevOps 문화에서는 무엇보다도 시스템, 애플리케이션, 서비스 및 비즈니스 프로세스의 지속적인 모니터링에 활용됩니다.
장애가 발생한 경우 Nagios는 기술 직원에게 통지하여 비즈니스 운영, 최종 사용자 또는 고객이 영향을 받기 전에 문제 해결을 시작할 수 있습니다.
감지되지 않은 인프라 고장이 Nagios를 사용하여 회사의 수익에 영향을 미치는 이유를 설명할 필요가 없습니다.
35. Nagios는 어떻게 작동합니까?
Nagios는 데몬 또는 서비스로 작동하는 서버 기반 모니터링 시스템입니다. Nagios는 정기적으로 동일한 서버에서 플러그인을 실행하고 네트워크 또는 인터넷의 호스트 또는 서버에 연결합니다. 웹 인터페이스를 사용하여 상태 정보를 볼 수 있습니다.
문제가 발생하면 이메일이나 SMS를 통해 알림을 받을 수도 있습니다. Nagios 데몬은 스케줄러처럼 작동하여 특정 시간에 프로그램을 실행합니다. 해당 스크립트의 출력을 저장하고 출력이 변경되면 새 스크립트를 실행합니다.
36. Nagios 로그 서버는 정확히 무엇입니까?
Nagios Log Server를 사용하면 로그 데이터를 더 쉽게 볼 수 있습니다. 알람을 설정하고, 가능한 위험이 나타날 때 경고하고, 단순히 로그 데이터를 검색하고, 모든 시스템을 빠르게 감사하는 것은 Nagios Log Server의 탁월한 기능입니다.
Nagios Log Server를 사용하여 고가용성으로 모든 로그 데이터를 한 곳에서 수신할 수 있습니다.
37. 나기오스의 스테이트 스토킹이란?
사물을 추적하는 데 사용됩니다. 호스트 또는 서비스에 대해 스토킹이 활성화되면 Nagios는 해당 호스트 또는 서비스를 면밀히 주시하고 확인 결과 출력에서 발견한 변경 사항을 기록합니다.
당신과 면접관이 나눈 대화에 따라 "이후 로그 파일을 검토할 때 매우 유용할 수 있습니다."라고 말할 수도 있습니다. 호스트 또는 서비스 검사의 결과는 호스트 또는 서비스가 이전 검사 이후 상태가 변경된 경우에만 일반적인 상황에서 보고됩니다."
38. 컨테이너란 정확히 무엇입니까?
컨테이너는 개발자의 랩톱에서 테스트 환경, 프로덕션에 이르기까지 일관된 컴퓨팅 환경을 만드는 데 사용됩니다. 컨테이너는 전체 런타임 환경, 즉 프로그램과 이를 실행하는 데 필요한 모든 종속성, 라이브러리, 기타 구성 요소 및 구성 파일을 포함하는 단일 패키지입니다.
OS 배포 및 지원 인프라의 격차는 애플리케이션 플랫폼과 해당 종속성을 컨테이너화하여 제거됩니다.
39. Docker 이미지란 정확히 무엇입니까?
Docker 컨테이너는 Docker 이미지에서 가져옵니다. 다시 말해서 Docker 이미지는 컨테이너를 빌드하는 데 사용됩니다. 이미지는 빌드 명령으로 빌드되며 실행 시 컨테이너를 형성합니다. Registry.hub.docker.com과 같은 Docker 레지스트리는 이미지를 저장합니다.
이미지는 네트워크를 통해 이미지를 전송하는 동안 최소한의 데이터를 전달할 수 있도록 크기가 커질 수 있으므로 다른 사진의 레이어로 구성되어야 합니다.
40. Docker 컨테이너란 정확히 무엇입니까?
Docker 컨테이너는 프로그램과 모든 종속성을 포함하지만 다른 컨테이너와 커널을 공유하고 호스트 OS의 사용자 공간에서 별도의 프로세스로 작동합니다. Docker 컨테이너는 실행하는 데 특별한 인프라가 필요하지 않습니다. 모든 머신, 인프라 및 클라우드에서 실행할 수 있습니다.
Docker 이미지를 생성한 다음 실행하거나 Dockerhub의 Docker 이미지를 사용하여 Docker 컨테이너를 구성할 수 있습니다. Docker 컨테이너는 기본적으로 런타임 Docker 이미지입니다.
41. Dockerfile의 목적은 무엇입니까?
Docker는 Dockerfile에서 지침을 읽고 자동으로 이미지를 생성할 수 있습니다.
Dockerfile은 사용자가 명령줄에서 이미지를 만드는 데 사용할 수 있는 모든 명령이 포함된 텍스트 파일입니다. 사용자는 docker build를 사용하여 여러 명령줄 명령을 연속적으로 수행하는 빌드를 자동화할 수 있습니다.
42. '쌍 프로그래밍'이란 정확히 무엇입니까?
페어 프로그래밍은 두 명의 프로그래머가 동일한 시스템, 디자인 및 코드에 대해 협력하는 엔지니어링 접근 방식입니다.
그들은 "익스트림 프로그래밍"의 원칙을 고수합니다. 이 경우 한 명의 프로그래머를 "드라이버"라고 하고 다른 한 사람을 "관찰자"라고 하며 더 이상의 어려움을 찾기 위해 프로젝트의 진행 상황을 지속적으로 확인합니다.
43. 셰프란 정확히 무엇인가요?
인프라를 코드로 변환하는 강력한 자동화 플랫폼입니다. 이 도구를 사용하여 작업을 자동화하는 스크립트를 만들 수 있습니다.
44. 블루/그린 배포 패턴이란 정확히 무엇입니까?
청록색 패턴은 사용자 트래픽을 이전에 작동하던 프로그램 또는 서비스 버전에서 거의 동일한 새 릴리스로 점진적으로 전환하는 데 초점을 맞춘 지속적인 배포, 애플리케이션 릴리스 방법론입니다. 두 버전 모두 프로덕션에서 실행됩니다.
파란색 환경은 프로그램의 이전 버전을 나타내고 녹색 환경은 현재 버전을 나타냅니다. 프로덕션 트래픽은 파란색에서 녹색 환경으로 점진적으로 전송되며 완전히 전송되면 파란색 환경은 롤백 요구 사항의 경우에만 보류 상태로 유지됩니다.
45. Memcached란 무엇입니까?
Memcached는 완전 무료 오픈 소스인 분산 메모리 개체 캐싱 기술입니다. 이것은 일반적으로 동적 웹 애플리케이션 RAM에 데이터를 캐싱하여 메모리를 관리합니다. 이렇게 하면 외부 소스를 쿼리해야 하는 횟수가 줄어듭니다. 데이터베이스 로드를 줄이면 동적 온라인 응용 프로그램의 속도를 높이는 데도 도움이 됩니다.
46. Memcached의 기능은 무엇입니까?
Memcached의 가장 주목할만한 특징은 다음과 같습니다.
- 업데이트된 개체는 CAS 토큰을 사용하여 저장됩니다.
- 코드를 더 읽기 쉽게 만들기 위해 콜백이 사용됩니다.
- GetDelayed를 사용하여 응답 시간이나 결과에 걸리는 시간을 줄입니다.
- 새 클라이언트와 함께 사용하려면 바이너리 프로토콜을 만드십시오.
- 복잡한 데이터 사용을 위해 Igbinary 데이터 옵션이 제공됩니다.
47. 몇 가지 유용한 네트워크 모니터링 도구의 이름을 말씀해 주십시오.
다음은 가장 널리 사용되는 네트워크 모니터링 도구입니다.
- 스플 렁크
- 아이싱가 2
- 와이어 샤크
- 나기 오스
- 오픈NMS
48. DevOps 파이프라인을 구축하는 데 장애물이 있습니까?
기술 폭발의 이 시대에 DevOps는 다양한 문제를 제시합니다. 대부분의 경우 데이터 마이그레이션 및 새로운 기능의 신속한 통합과 관련이 있습니다. 데이터 마이그레이션이 실패하면 시스템이 불안정해져 향후 문제가 발생할 수 있습니다.
그러나 CI 시스템 내에서는 증분 제품 릴리스를 지원하는 기능 플래그를 사용하여 이를 처리할 수 있습니다. 이는 롤백 기능과 함께 일부 문제를 완화하는 데 도움이 될 수 있습니다.
49. Secure Shell의 목적은 정확히 무엇입니까?
SSH는 일반적으로 두 대의 컴퓨터를 연결하고 원격으로 작동하는 데 사용됩니다. SSH는 운영 팀이 관리 시스템에 대한 원격 액세스가 필요한 잡일을 처리하기 때문에 운영 팀에서 주로 사용합니다.
개발자는 SSH도 사용하지만 대부분의 시간을 로컬 시스템에서 작업하기 때문에 운영 팀보다 정도는 적습니다. 앞서 언급했듯이 DevOps 개발 및 운영 팀은 상호 작용하고 함께 작업합니다.
SSH는 운영 팀에서 문제가 발생하고 개발 팀의 도움이 필요할 때 활용됩니다.
50. CBD는 정확히 무엇입니까?
Component-Based Creation으로도 알려진 CBD는 새로운 제품 개발 방법입니다.
이 전략의 개발자는 처음부터 시작하는 대신 항상 잘 정의되고 테스트되고 확인된 기존 구성 요소를 찾아 제품을 구성하고 조립합니다.
결론
최고의 DevOps 인터뷰 질문과 답변이 이제 완료되었습니다. DevOps는 소프트웨어 개발 속도를 높이는 것뿐만 아니라 소프트웨어 품질을 개선하는 데도 중요합니다.
DevOps는 새로운 태도, 민첩한 기술 및 스마트 기술을 테이블에 제공하며 이 모든 것이 목표를 달성하기 위해 함께 작동합니다. DevOps는 또한 코드 오류 감지를 지원하고 팀 커뮤니케이션을 개선하며 소프트웨어 개발의 총 비용을 절감할 수 있습니다.
댓글을 남겨주세요.