"우리는 프로그래머가 아니라 시스템 관리자입니다."
저와 같은 회색 수염은 전문 프로그래머보다 더 나은 프로그래머 가 될 것으로 예상 되거나 시스템 관리자 에게 결코 전달할 수 없었을 것 입니다.
이제 우리는 "시스템 관리자"를 보유하고 있습니다. 기본적으로 Windows 데스크톱 사용자는 어느 시점에서 Linux로 변환되어 프로그래밍 할 수 없으며 그에 대한 잘못된 점을 찾지 못합니다.
방 안에있는 코끼리는 경영진이 그러한 파괴적인 태도를 용인하는 이유입니다. 누구 또는 무엇을 파괴? 비즈니스와 인프라에.
Puppet [, CFEngine, Chef] 주제로 돌아 가기 : 이와 같은 솔루션을 설정하자마자 손실됩니다. 모두가집니다. 왜? 이 아이디어를 가진 사람은 훌륭하고 깔끔한 Kickstart [, JumpStart, 자동 설치 프로그램, AutoYaST, Ignite-UX, NIM] 운영 체제 패키지 형태로 캡슐화 된 구성 관리를 설계 할 수 없기 때문입니다. Puppet (또는 Chef 또는 CFEngine)과 같은 자동화 된 해킹 도구를 사용해야하는 경우 , 동일한 설계로 완전히 깨끗한 상태를 유지하고 관리되는 시스템을 완전히 소멸 시키는 프로세스 를 설계 하고 구현할 위치 가 부족함을 의미합니다. 자동화되고 완전히 비 대화식입니다.
또 다른 중요한 점은 누군가 해킹 시스템이나 응용 프로그램 구성을 수동 으로 수정 하기 위해 Puppet 또는 이와 같은 솔루션이 있어야 하는 경우 프로세스를 설계 한 경험이 없으며 프로세스에서 구성이 패키지 된 프레임 워크입니다 개별 부품으로. 실제로 Puppet 등을 구현하는 사람은 구성 요소 소유자, 릴리스, 구성 관리, Capability Maturity Model에 대한 개념이 없습니다. 이것은 업계에서 매우 심각한 문제로 빠르게 발전하고 있습니다.
Puppet과 함께 일하면서 Bash를 기본 시스템 도구 언어로 대체 한 Ruby도 배울 수있었습니다. "
Bourne 쉘 프로그램, AWK 및 sed를 사용하여 운영 체제 패키지의 사전 설치, 사후 설치, 사전 제거 및 사후 제거 섹션에서 포괄적 인 엔드 투 엔드 구성 관리를 캡슐화 할 수있는 경우 Ruby가 필요한 이유는 무엇입니까? 누군가가 난해한 루비 언어를 배우는 데 오래 걸리고 꼭두각시와 관련하여 그 방언이 완전히 불필요합니다. 셸 프로그램과 AWK를 사용하여 구성 관리 문제를 쉽게 해결할 수 있으며 해결되었습니다.
Puppet 매니페스트가 전체 컴퓨터 또는 새로운 서비스를 처음부터 구성하는 것을 보는 것은 멋진 느낌입니다.
그것은, 킥 스타트, AutoYaST를, 또는 JumpStart를 수행 볼 수없는, 심지어 쿨러 일이 단 한 줄의 코드없이 , 그리고 사용하여 운영 체제를 조회 할 수있는 어떤 비전이나 추가 소프트웨어를 필요로하지 않고, 내장 도구 , 어떤 클라이언트 - 서버를 아키텍처가 필요하고 (SSH는 더 훌륭하고, 훨씬 더 좋습니다), 운영 체제가 각각의 모든 변경 사항을 인식하고 있음을 확인하십시오.
5. 데이터와 별도의 코드. 이것은 배우기가 더 어려운 개념 중 하나입니다. 모니터링 호스트와 같은 값을 모듈 코드로 하드 코딩하는 것은 좋지 않습니다. 모듈이 소비 할 수있는 데이터 저장소 (db, yaml (Hiera는 이것을 기본값으로 사용), csv 등)에 넣는 것이 좋습니다. 예를 들어 Mysql을 사용하는 웹앱이 있습니다. 이것이 허용하는 것은 코드와 데이터를 개별적으로 푸시하는 기능입니다. 이를 통해 개발 프로세스가 더 간단 해집니다.
... 또는 쉘 변수로 구성 파일을 템플릿 화하고 (예를 들어 ls -1 ...
) 따옴표 를 사용하여 AWK를 사용하여 eval (1)을 호출하고 템플릿의 모든 변수를 확장하여 정확히 동일한 강력한 기능을 활용하는 쉘 스크립트를 작성할 수 있습니다 쉘에 내장 된 파서. 왜 그렇게 단순 할 수 있습니까? 구성 값을 어디에 저장합니까? 왜, 어디서든하시기 바랍니다, 같은 꽤 많이 (4) 파일 또는 오라클과 같은 데이터베이스 또는에서 pkginfo 예를 들어 같은 어디서나 . 초 복합 솔루션이 필요하지 않습니다. 위에서 언급 한 라이브러리 는 운영 체제 패키지의 사전 설치 또는 사후 설치 섹션에서 간단하게 소스 를 만들 수 있으므로 중복을 제거하고 중앙 코드를 활용할 수 있습니다.
그러나 무엇보다도 위의 인용문은 시스템 관리자가 아니라 시스템 엔지니어 가지도를 필요로하는 차세대 시스템 관리자의 예라는 것을 알았습니다 . 회색 수염을 찾아서 견습생으로 사인하십시오.