DevOps 학습은 어디서 시작합니까?


10

"데 보프를 시작하는 방법"을 검색하는 것은 실제로 도움 이되지 않았습니다. 많은 사람들 이것이것 뿐만 아니라 다른 사람들도 저를 올바른 방향으로 가리 키지 않습니다. 지금까지 본 모든 YouTube 비디오는 도움이되지 않았습니다 (IS가 무엇을 설명하는지 비디오가 필요하지 않기 때문에). 비디오는 지금까지 유일한 예외입니다 (사물이 어떻게 통합되는지 보여줍니다).

저는 CCNA이며 DBMS에 능숙합니다 (현재 병렬 처리 및 기타 학습).

그러나 나는 무엇을 먼저 배워야하는지 (또는 그 문제에 대한 올바른 자료를 어디서 찾을 수 있는지) 모릅니다 .

졸업하려고하는데 실제 경험에 접근 할 수 없습니다.

조언이나 도움이 필요하십니까?

답변:


5

Devops는 소프트웨어 실행과 관련이 있습니다. 응용 프로그램이나 서비스를 실행하는 방법에 관한 것입니다. 따라서 서버 구성 도구, 가상 머신 및 컨테이너가 다음 단계입니다. 이러한 도구의 설명서를보고 발견, 관찰 가능성, 확장 성 및 중복성 등을 배우는 것이 좋습니다. 몇 가지 예를 들면 다음과 같습니다.

서버 설정 :

  • PXE
  • 가능
  • 인형

VM :

  • 방랑자
  • QEMU

컨테이너:

  • 도커
  • 쿠 버네 티스

편집 : 클라우드 기술 개요 :

소프트웨어 아키텍처가 마이크로 서비스에 관한 것이라면 컨테이너를 선택하는 것이 좋습니다. 오래된 단일 응용 프로그램을 사용하는 경우 VM은 나쁜 옵션이 아닙니다. 따라서 항상 상황에 따라 구체적으로 배워야 할 것이 있습니다. 주제를 요약하면 다소 광범위합니다. 책이 도움이 될 수는 있지만 슬프게도 좋은 책을 제안 할 수는 없습니다. "Kubernetes in Action"은 Kubernetes에서 좋은 출발을 제공합니다.


또한 대나무, 젠킨스, 팀 시티 등과 같은 ci / di에 관한 것을 추가 할 것입니다.
Cyclonecode

1
내가 잊어 버린 한 가지가 도움이 될 수 있습니다. 클라우드 기술에 대한 개요 : CNCF landscape
jhamfler

글을 편집하고 더 많은 정보를 추가하십시오 =) 실제로 이것을 쳐다 보았습니다.
Cyclonecode

@ Cyclonecode 당신이 맞아요. 완료
jhamfler

EC2가 이미 가상 머신에서 실행중인 경우 바보 같은 질문 인 경우 죄송합니다. 왜 Docker가 필요합니까?
PirateApp

4

우선 DevOps가 문화가 아니라 역할이 아니라는 점을 강조하고 싶습니다. 제 생각에는 저격병, 해병, 공병과 같은 자신의 전문 지식을 갖춘 특공대 팀과 비교할 수 있습니다 (특공대 시리즈에 대해 생각하십시오). 기본적으로 함께 작동하는 이러한 전문 지식을 결합하면 가능한 빨리 임무를 수행하거나 비즈니스 가치를 창출 할 수 있습니다.

LowOps 및 NoOps

몇 주 동안 나는 사람들과 많은 대화를 한 후에 요즘 LowOps에 대해 이야기하는 것을 발견했습니다. 솔루션을 구현하면 솔루션이 완전히 자동화되었으며 동료가 나에게 묻지 않고 컴퓨터를 직접 배포 할 수 있습니다. 때로는 완전히 자동화하는 것이 즉시 가능하지는 않지만 몇 시간을 낭비하지 않고 작업을 수행하기 위해 하나의 명령 만 실행하면 (LowOps) 자동화 할 수 있습니다. 이러한 솔루션을 만든 경우 동료가 모든 사람을 위해 내 개인 솔루션을 자동화 할 수 있도록 티켓을 만들 었는지 확인합니다. 예 : 내 동료가 매일 밤마다 실행되는 봇에서 bash 스크립트 중 하나를 변환했습니다.

여기에 이미지 설명을 입력하십시오

그림 1 : https://www.gslab.com/blog-post/what-is-noops/

"개발자 시작 방법"

역량이 서로 다른 팀의 일원이며 팀이 소프트웨어를 직접 배포해야합니다. 모든 팀원과 대화하고 지식이나 의지가 부족하여 아무도 원하지 않는 작업으로 시작하십시오. 작업을 시작하면 모르는 것에 부딪치게됩니다. 비디오 시청, 밋업 참석 , 책 구매 및 읽기, 블로그 및 툴링에 대한 공식 문서 읽기, 동료에게 풀 요청을 검토하고 사람들과 잘 의사 소통하고 잘 듣고, 내용을 잘 문서화하고 동료를위한 솔루션을 준비하고 시연하도록 요구합니다 (지식 공유). . 마지막 제안은 일과 삶의 균형 을 주시하는 입니다.


2

다른 답변은 도구에 중점을 두었습니다. 제 생각에는 툴킷에서 역량을 얻는 것은 물론 좋은 일이지만 DevOps 문화에 적합하지는 않습니다. DevOps는 먼저 일련의 사례 또는 방법 입니다.

관행과 방법이 유용한 이유를 이해 하는 것은 경험과 함께 제공되지만 그 사치가 없습니다. 그러므로 나는 당신을 가리킬 것입니다

기초적인 텍스트로.

연속 배달 웹 사이트는 또한 일련의이 원리기초 시작할 때 당신에게 관련 접지를 제공합니다.

이것부터 시작하여 실습과 방법을 배우고 도구를 어떻게 협업하고 사용 하는지 알려 줍니다 .



1

이것은 내가 여러 번 나 자신에게 물어 본 종류의 질문이며, 나를 따르는 경향이있다. 안타깝게도 검색 엔진에 대한 질문은 경영진을 대상으로하는 웹 사이트 로 넘쳐나고 Devops 란 무엇인가 를 설명하려는 경향 이 있습니다. 그리고 왜 devops를 사용하여 소프트웨어주기를 산업화해야합니까?

즉, 귀하의 질문에 답하기 위해 개인적인 경험으로 만 말할 수 있습니다. 우수한 Docker 시작 안내서로 학습 여행을 시작했습니다 .


1

"Learning DevOps"는 당신도 알다시피, 너무 광범위한 질문을 받았지만, 똑같은 것을 구글해야한다는 것을 기억할 수 있습니다.

@jhamfler의 답변에 추가하려면 : 스스로에게 물어보십시오. 왜 그것에 대해 배우고 싶습니까? 어떤 맥락에서 왔습니까? DevOps는 일반적으로 수동 장애물 또는 팀의 사일로 구조를 분해하는 것과 관련이 있습니다. 프로젝트에 "갭"이 있습니까? 자동화를 통해 혜택을 얻을 수있는 부분은 무엇입니까?

내가 제안 할 수있는 일반적인 문제는 다음과 같습니다.

  • 수동 서버 유지 관리 대 스크립트 솔루션
  • 안정성 및 백업
  • 통합 테스트 자동화
  • 지속적인 배포 자동화 (예 : 웹 서비스)
  • ...

"연속 배포"및 "연속 통합"(CI / CD)을 검색하면 도움이 될 수 있습니다.


1

가장 먼저 배우고 익숙해 져야 할 것들 :

  • 유닉스 (파일 시스템, 권한, 프로세스, 서비스, 로그, 네트워킹 등)
  • ssh 및 리버스 터널링
  • 나노 / 빔
  • 파이썬
  • 자식

그런 다음보다 구체적인 주제로 넘어갈 수 있습니다.

  • 컨테이너화 (예 : 도커)
  • 구성 관리 (예 : ansible)
  • 지속적인 배포 (예 : 젠킨스)
  • 모니터링 (예 : 프로 메테우스 / 그라 파나)
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.