더북(TheBook)

어떤 작업을 자동화합니까?

셋째마당에서는 시스템 관리를 자동화하는 방법을 살펴봅니다. 시스템 자동화는 주로 시스템 관리자의 지루하고 반복적인 업무를 대상으로 합니다. 시스템 관리자는 다음과 같은 일들을 처리합니다.

시스템 설치 전 네트워크 주소와 이름 정보를 할당하고 운영 중인 서버의 설정을 수정하는 일

새로운 시스템에 운영체제를 설치하고 기본적인 환경 설정을 하는 일

복사, 공유, 백업, 복원과 같이 자료를 관리하는 일

사용자 계정 관리, 소프트웨어 패키지 관리와 같이 시스템을 유지보수하고 변경하는 일

로그 점검, 침입 탐지, 취약점 분석과 같은 시스템 보안을 유지하는 일

시스템 부하, 디스크 공간, 드라이브 고장 감시와 같은 물리적인 시스템 상태를 점검하는 일

이러한 업무 중에서 절차가 명확하고 반복적인 작업일수록 자동화에 적합합니다. 구체적으로 얘기하자면 셋째마당에서 다루는 ‘시스템 설치하기, 시스템 설정하고 패키지 관리하기, 설정 파일의 버전 관리하기, 정해진 스케줄에 맞춰 백업하기’ 정도가 될 것입니다.

9장에서는 DHCPDynamic Host Configuration Protocol 서버와 우분투의 미리 설정 기능Preseed으로 우분투 설치를 자동화합니다. 수많은 시스템을 대상으로 운영체제가 자동으로 설치되는 광경을 머릿속에만 그리지 말고 현실에서 구현해봅시다. 운영체제 설치가 끝나고 기본적인 환경 설정이 적용된 상태로 시스템이 제공됩니다. 공장에서 똑같은 제품을 양산하는 것과 다르지 않습니다.

10장에서는 퍼펫Puppet으로 시스템 설정을 자동화합니다. 시스템 관리자가 직접 모든 시스템을 대상으로 일일이 시스템 설정을 변경한다면 시간과 노력이 기하급수적으로 들 것이라는 점은 차치하더라도 전체 시스템의 일관성을 무너뜨리는 결과를 초래할 것입니다. 모든 시스템 설정을 중앙에서 통제할 수 있어야 예외 상황을 줄일 수 있습니다.

11장은 10장에서 다룬 설정 파일을 깃Git으로 버전 관리하는 방법을 다룹니다. 규모가 크고 복잡한 시스템일수록 각 작업들이 서로 얽히고설키기 마련입니다. 작업 하나를 변경함으로써 예상하지 못했던 문제가 발생할 수도 있습니다. 문제가 발생했을 때 언제든지 변경 전으로 되돌릴 수 있도록 버전 관리가 필요합니다.

12장에서는 바쿨라Bacula로 네트워크 시스템을 백업하는 방법을 소개합니다. 안전하게 보관해야 할 중요한 자료가 각 시스템마다 흩어져 있는데 수작업으로 백업해야 한다면 시스템 관리자 입장에서는 악몽이 따로 없겠지요. 네트워크 백업 도구인 바쿨라를 이용하면 체계적인 백업 정책을 세워 자료를 저장할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.