민첩한 sysadmin 및 devops-어떻게 달성합니까? [닫은]


18

오늘날 민첩한 시스템 관리 및 개발은 시스템 관리 및 운영과 관련하여 가장 인기있는 주제 중 하나입니다. 이 두 개념은 주로 운영 / 시스템 관리자와 프로젝트 (개발자, 비즈니스 등) 간의 격차해소하는 데 중점을두고 있습니다. devops 개념에 대해 들어 본 적이 없어도이 주제도 귀하의 관심사입니다.

그렇다면 귀사에서 데프를 달성하기 위해 어떤 도구와 기술을 사용하십니까? 특히 변경 관리, 지속적인 통합 및 자동화와 같은 주제에 관심이 있지만 이러한 주제에만 국한되지는 않습니다. 당신의 생각을 공유하십시오. 나는 당신의 답변 / 의견을 읽을 수 있기를 기대합니다 :)


"브리징"개발 및 운영 (시스템 관리) 문제의 일부는 다른 우선 순위입니다. 시스템 관리자의 최우선 과제는 다양한 일반적인 반복 작업이지만 일을 계속 유지하는 것입니다. 개발의 최우선 과제는 새로운 기능 을 만드는 것입니다. 이러한 작업은 크게 겹칠 수 있지만 경합이 발생할 때가 있습니다. 경합의시기에 DevOp는 운영자 또는 개발자 중 하나를 선택해야합니다. 특정 설정은 경과를 허용 할 수 있지만 대부분 재정적 인 재수는받지 않습니다.
Chris S

2
또한 최근에 프로그래밍 방법을 알고있는 관리자를 논의하는 사람이 있다고 들었습니다. 능력은 우선 순위 나 주요 책임을 결정하지 않습니다. 현대 관리자는 게으르다. 이를 위해 그들은 모든 일에서 효율적이어야합니다. 스크립팅, 유지 보수 유틸리티 작성 및 코드 이해는 이제 기본 기술 세트입니다. 이러한 기술을 제안하지 않는 SA는 이러한 비 효율성이 허용되는 소규모의 무기력 한 비즈니스 모델 (예 : 제조)로 강등되고 있습니다. 변화하는 지식 기반은 악의적 인 용어의 보호를 보증하지 않습니다.
Chris S

답변:


30
  • svn / git-수정 제어.

  • trac / redmine / jira-발권.

  • cobbler-기본 운영 체제 서버 프로비저닝 용. Cobbler는 Redhat 제품군 중심 제품이지만 데비안 / 우분투와 비슷한 것이 있다고 확신합니다. 마찬가지로 RightScale과 같은 대부분의 "클라우드 제어판"회사에서이를 제공합니다. 여기에서 사용되는 용어는 "JEOS"또는 "충분한 운영 체제"입니다. 내 경로는 킥 스타트에서 "% packages --nobase"라인을 사용하고 다음을 통해 특정 스택을 만드는 것입니다.

  • 꼭두각시 / 최고-구성 관리 및 일관성 적용. 여기에 다른 옵션도 있습니다. 어느 옵션을 사용하는 것이 더 중요합니다. 내가 특히 중요하게 생각한 한 가지 방법은 개발자가 사용하는 것과 동일한 버전 제어 시스템에 구성을 저장하는 것입니다. 이를 통해 두 팀의 워크 플로우를 결합하여 서로에게 표시 할 수 있습니다.

  • func (또는 capistrano 또는 cluster-ssh)-클러스터에서 배포 스크립트를 실행합니다. 여기서의 트릭은 선임 개발자가 새로운 것을 실현하고 피할 수없는 수정을 추진하기 위해 스스로 실행할 수있는 무언가를 만드는 것입니다.
    이것은 실제로 개발자의 환경을 깨고 고칠 수 있도록 힘을 실어주는 개발팀의 핵심입니다. 많은 sysadmins가 이렇게 힘을 많이 쓰지 못하거나 관리자가 sysadmins가 개발자를 치안해야한다는 잘못된 개념에 대해 여전히 노력하고 있습니다.

  • 선인장 / 신경절 / 수집 / 뮤닌-그래프는 soooooo 키입니다. 단순한 비주얼의 인간 가치를 가진 메트릭스의 비즈니스 가치. 코드 푸시 타임 스탬프와 그래프 변경 타임 스탬프를 연결하면 성능 회귀 문제를 해결하고 성능 결정에 대한 실제 사실을 확인할 수 있습니다. 여기에는 개발자가 그래프를 쉽게보고 사용할 수 있어야하고 관리 팀에서 그래프를 기대해야한다는 점이 중요합니다.

  • nagios / zabbix / smokeping / etc-서버 항목 모니터링 및 "기본 페이지"유형 성능 메트릭 다시 그래프가 핵심입니다. 이것들은 팀의 운영 측면에 더 있습니다.

  • gomez / keynote / browsermob-타사 서비스, CDN 및 렌더링 시간 문제를 고려하여 전체 브라우저 성능을 외부에서 모니터링합니다. 이것들은 팀의 개발자 측면에 더 있습니다.

그것은 도구와 기술의 혼합이며 기술에 중점을 둡니다. 특히 devops의 "sysadmin"쪽 사고 방식이 "admin"에서 "operations"로 변경되었습니다. 개발자를 가능하게하는 것입니다. 그들이 일을 할 수있게하고, 일을 고칠 수있게하고, 그들이 한 일에 대한 실제 사실 / 메트릭 / 그래프를 볼 수있게합니다. 반대로 개발자들은 자신이 활성화되어 있다는 사실을 받아 들여야하고 실제로 성능 트렌드를보고 문제를 디버깅하며 기능뿐만 아니라 롤아웃하는 방법과 전체 시스템 / 환경의 건강에 미치는 영향에 대해 생각하는 작업을 수행해야합니다. .


2
+1 "개발자들이 환경을 깨고 고칠 수 있도록 힘을 실어주는 핵심 개발자"
Ryan Gibbons

신뢰할 수있는 서비스를 제공하는 것과 직접적으로 논쟁을 벌이는 이유와 개발자가 때때로 이해하지 않고 작업을하는 개발자가 될 수있는 이유는 무엇입니까? 이 기술은 스테이징, 리던던시 등의 사용자로부터 휴식을 숨기기 위해 무료 개발과 링 펜싱 변경 허용 간의 올바른 균형을 찾는 것입니다.
JamesRyan


2

가장 좋은 방법은 작업 환경을 이해하는 것입니다. 개발자 및 관리자와 대화를 시작하십시오. 그들을 보드에 올려 놓고 아이디어를 튀기도록 노력하십시오. 아마도 그들은 일이 어떻게 진행되는지에 대한 좋은 아이디어를 가질 것이며 devops 소개에 대한 당신의 아이디어가 문제를 일으킬 것입니다.

거기서부터 응용 프로그램을 살펴보고 문제를 해결하기 위해 한 번에 하나씩 소개하십시오.


introduce them one at a time to solve problems.+1
Banjer

0

도구와 기술이 중요하지만 중요한 경로는 전체 조직에서 공동 작업입니다. 요즘 IT 운영 비즈니스 운영입니다. Etsy는 모든 사람이 볼 수있는 대시 보드의 수익 변화를 보여줍니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.