[python] Fabric으로 서버 로그 백업 및 압축하기

개요

Fabric은 파이썬으로 작성된 라이브러리로, 서버 관리 작업을 자동화하기 위해 사용됩니다. 이번 포스트에서는 Fabric을 이용하여 서버의 로그 파일을 백업하고 압축하는 방법에 대해 알아보겠습니다.

필요한 패키지 설치

Fabric을 사용하려면 먼저 패키지를 설치해주어야 합니다. 아래 명령어를 이용하여 패키지를 설치합니다.

pip install fabric

Fabric 스크립트 작성

Fabric을 사용하여 서버의 로그 파일을 백업하고 압축하기 위해서는 다음과 같은 Fabric 스크립트를 작성해야 합니다.

from fabric import Connection

def backup_logs():
    # 연결할 서버 정보
    host = "서버 주소"
    user = "사용자 이름"
    password = "비밀번호"

    # Fabric Connection 객체 생성
    conn = Connection(host=host, user=user, connect_kwargs={"password": password})

    # 로그 파일을 백업할 디렉토리 경로
    log_directory = "/var/log"

    # 로그 파일을 압축한 파일의 이름
    compressed_file_name = "logs.tar.gz"

    # 로그 파일 백업 및 압축 명령어 실행
    conn.run(f"tar -zcvf {compressed_file_name} {log_directory}")
    conn.close()

위 스크립트에서는 Fabric의 Connection 객체를 생성한 후, 해당 서버에 연결합니다. 로그 파일이 위치한 디렉토리 경로와 압축된 파일의 이름을 지정한 후, tar 명령어를 사용하여 로그 파일을 압축합니다.

스크립트 실행

Fabric 스크립트를 실행하기 위해 다음과 같이 명령어를 입력합니다.

fab backup_logs

위 명령어를 실행하면, 스크립트에서 지정한 서버에 로그 파일이 백업되고 압축됩니다.

결론

이번 포스트에서는 Fabric을 사용하여 서버의 로그 파일을 백업하고 압축하는 방법에 대해 알아보았습니다. Fabric은 서버 관리 작업을 간편하게 자동화할 수 있는 강력한 도구이므로, 필요한 작업에 적용해보시길 추천드립니다.

참고 자료