디스크 공간 관리

디스크 공간이 부족하면 복구가 불가능한 SUSE Multi-Linux Manager 데이터베이스 및 파일 구조에 심각한 영향을 미칠 수 있습니다.

SUSE Multi-Linux Manager은 일부 디렉토리의 여유 디스크 공간을 모니터링합니다. 모니터링되는 디렉토리와 생성되는 경고는 systemd 서비스 오버라이드 파일의 환경 변수를 사용하여 수정할 수 있습니다.

모니터링되는 디렉토리 중 하나의 사용 가능 공간이 경고 임계값 미만으로 감소하면, 구성된 이메일 주소로 메시지가 전송되고 로그인 페이지 상단에 알림이 표시됩니다.

1. 모니터링되는 디렉토리

기본적으로 SUSE Multi-Linux Manager 서버 컨테이너는 다음 디렉토리를 모니터링합니다:

  • /var/spacewalk

  • /var/cache

  • /srv

서버 컨테이너의 systemd 서비스에서 DISKCHECKDIRS 환경 변수를 설정하여 모니터링되는 디렉토리들을 변경할 수 있습니다. 여러 디렉토리를 공백으로 구분하여 지정할 수 있습니다.

DISKCHECKDIRS 환경 변수는 서버 컨테이너에만 적용됩니다. 데이터베이스 컨테이너는 항상 `/var/lib/pgsql/data`를 모니터링하며, 이는 오버라이드할 수 없습니다.

절차 모니터링된 디렉토리 구성
  1. 서버 서비스에 대한 systemd 오버라이드 디렉토리를 생성합니다:

    mkdir -p /etc/systemd/system/uyuni-server.service.d/
  2. 사용자 지정 디렉토리로 구성 파일을 생성합니다:

    cat > /etc/systemd/system/uyuni-server.service.d/diskcheck.conf << 'EOF'
    [Service]
    Environment="DISKCHECKDIRS=/var/spacewalk /var/cache /srv"
    EOF
  3. SUSE Multi-Linux Manager를 재시작하여 구성을 적용하십시오:

    mgradm restart

컨테이너 볼륨에 대한 자세한 내용은 영구 볼륨을 참조하십시오.

2. 임계값

기본적으로 SUSE Multi-Linux Manager은 모니터링된 디렉토리가 90% 디스크 사용량에 도달하면 경고를 생성합니다. 모니터링된 디렉토리가 95% 디스크 사용량에 도달하면 심각한 경고가 생성되며, 컨테이너 상태 검사가 실패합니다.

DISKCHECKALERTDISKTHRESHOLD 환경 변수를 설정하여 이러한 경고 임계값을 변경할 수 있습니다.

절차 디스크 체크 임계값 구성
  1. systemd 오버라이드 디렉토리를 생성합니다:

    mkdir -p /etc/systemd/system/uyuni-server.service.d/
    mkdir -p /etc/systemd/system/uyuni-db.service.d/
  2. 서버 및 데이터베이스 서비스에 대한 구성 파일을 생성합니다:

    cat > /etc/systemd/system/uyuni-server.service.d/diskcheck.conf << 'EOF'
    [Service]
    Environment="DISKCHECKALERT=90"
    Environment="DISKTHRESHOLD=95"
    EOF
    
    cat > /etc/systemd/system/uyuni-db.service.d/diskcheck.conf << 'EOF'
    [Service]
    Environment="DISKCHECKALERT=90"
    Environment="DISKTHRESHOLD=95"
    EOF
  3. SUSE Multi-Linux Manager를 재시작하여 구성을 적용하십시오:

    mgradm restart

다중 테라바이트 저장 용량을 가진 대규모 배포의 경우, 디스크 공간을 보다 효율적으로 사용하기 위해 더 높은 임계값을 사용하는 것이 좋습니다. 예를 들어, 10 TB 볼륨에서 5%를 비워두면 500 GB가 사용되지 않습니다. 대규모 배포에 대한 조정 권장 사항은 specialized-guides:large-deployments/tuning.adoc#diskcheck-thresholds을 참조하십시오.

3. 데이터베이스 디스크 점검

데이터베이스 컨테이너는 PostgreSQL 데이터 디렉토리 (/var/lib/pgsql/data)만 모니터링하는 자체 디스크 점검 기능을 가지고 있습니다. 이 디렉토리는 항상 모니터링되며 DISKCHECKDIRS 환경 변수를 사용하여 변경하거나 오버라이드할 수 없습니다.

데이터베이스 디스크 점검은 uyuni-db 서비스를 위해 구성된 DISKCHECKALERTDISKTHRESHOLD 환경 변수를 사용합니다.

데이터베이스 디스크 점검은 PostgreSQL 함수로 실행되며 컨테이너 상태 점검 중에 호출됩니다. 임계값이 초과되면 상태 점검이 실패하고 데이터 손상을 방지하기 위해 컨테이너가 자동으로 중지됩니다.

데이터베이스 컨테이너는 `/var/lib/pgsql/data`만 모니터링합니다. 데이터베이스 컨테이너에서 `DISKCHECKDIRS`를 사용하여 모니터링할 추가 디렉토리를 구성할 수 없습니다. 다른 디렉토리를 모니터링하려면 서버 컨테이너 구성을 사용하십시오.

4. 공간 검사 비활성화

공간 점검 도구는 기본적으로 활성화되어 있으며 Taskomatic 예약 작업을 통해 매시간 실행됩니다. 디스크 점검 작업 대기열 기본 Taskomatic 작업을 비활성화하여 알림을 비활성화할 수 있습니다. 디스크 공간 모니터링을 효과적으로 비활성화하려면 임계값을 99(퍼센트)로 설정하십시오.

절차 디스크 공간 모니터링 비활성화
  1. 매우 높은 임계값을 설정하려면 systemd 오버라이드 파일을 편집하십시오:

    cat > /etc/systemd/system/uyuni-server.service.d/diskcheck.conf << 'EOF'
    [Service]
    Environment="DISKCHECKALERT=99"
    Environment="DISKTHRESHOLD=99"
    EOF
    
    cat > /etc/systemd/system/uyuni-db.service.d/diskcheck.conf << 'EOF'
    [Service]
    Environment="DISKCHECKALERT=99"
    Environment="DISKTHRESHOLD=99"
    EOF
  2. SUSE Multi-Linux Manager를 재시작하여 구성을 적용하십시오:

    mgradm restart

생산 환경에서 디스크 공간 모니터링을 비활성화하는 것은 권장되지 않으며, 디스크 공간이 부족해지면 데이터베이스에 심각하고 복구할 수 없는 손상을 초래할 수 있습니다.