Proxmox VE 매뉴얼 : 17. 알림

Proxmox VE 매뉴얼을 Google Translate로 기계번역하고, 살짝 교정했습니다.
https://pve.proxmox.com/pve-docs/pve-admin-guide.html
version 8.1.4, Wed Mar 6 18:21:39 CET 2024

17.1. 개요

Proxmox VE는 시스템에 주목할만한 이벤트가 있는 경우 알림을 보냅니다.

알림 일치자(matcher)에서 사용할 수 있는 고유한 메타데이터 필드 집합이 있는 다양한 알림 이벤트가 있습니다.

알림 일치자는 어떤 알림을 어디로 보낼지 결정합니다. 매처에는 특정 알림 속성(예: 타임스탬프, 심각도, 메타데이터 필드)을 일치시키는 데 사용할 수 있는 일치 규칙이 있습니다. 매처가 알림과 일치하면 알림은 구성 가능한 알림 대상 집합으로 라우팅됩니다.

알림 대상은 알림을 보내야 하는 대상(예: Gotify 서버 인스턴스 또는 이메일 주소 집합)에 대한 추상화입니다. 시스템의 sendmail 명령을 사용하여 이메일을 보내는 sendmail이나 Gotify 인스턴스에 알림을 보내는 gotify를 포함하여 여러 유형의 알림 대상이 있습니다.

알림 시스템은 Datacenter → Notifications 아래의 GUI에서 구성할 수 있습니다. 구성은 /etc/pve/notifications.cfg 및 /etc/pve/priv/notifications.cfg에 저장됩니다. 후자에는 알림 대상에 대한 비밀번호 또는 인증 토큰과 같은 중요한 구성 옵션이 포함되어 있습니다.

17.2. 알림 대상

17.2.1. sendmail

sendmail 바이너리는 이메일 메시지 전송을 처리하는 Unix 계열 운영 체제에서 흔히 발견되는 프로그램입니다. 이는 사용자와 애플리케이션이 명령줄이나 스크립트 내에서 직접 이메일을 보낼 수 있도록 하는 명령줄 유틸리티입니다.

sendmail 알림 대상은 sendmail 바이너리를 사용하여 이메일을 보냅니다.

참고: 표준 Proxmox VE 설치에서 sendmail 바이너리는 Postfix에서 제공됩니다. 이러한 유형의 대상이 올바르게 작동하려면 이메일을 올바르게 전달할 수 있도록 Postfix의 구성을 변경해야 할 수도 있습니다. 클러스터 설정의 경우 모든 단일 클러스터 노드에서 작동하는 Postfix 구성이 필요합니다.

Sendmail 대상 플러그인 구성에는 다음과 같은 옵션이 있습니다.

  • mailto: 알림을 보낼 이메일 주소입니다. 여러 수신자를 수용하기 위해 여러 번 설정할 수 있습니다.
  • mailto-user: 이메일을 보낼 사용자입니다. 사용자의 이메일 주소는 users.cfg에서 조회됩니다. 여러 수신자를 수용하기 위해 여러 번 설정할 수 있습니다.
  • author: E-Mail의 작성자를 설정합니다. 기본값은 Proxmox VE입니다.
  • from-address: 이메일의 보낸 사람 주소를 설정합니다. 매개변수가 설정되지 않은 경우 플러그인은 datacenter.cfg의 email_from 설정으로 대체됩니다. 이 항목도 설정되지 않은 경우 플러그인은 기본적으로 root@$hostname으로 설정됩니다. 여기서 $hostname은 노드의 호스트 이름입니다.
  • comment: 이 대상에 대한 설명 이메일의 From 헤더는 $author <$from-address>로 설정됩니다.

구성 예(/etc/pve/notifications.cfg):

sendmail: example
        mailto-user root@pam
        mailto-user admin@pve
        mailto max@example.com
        from-address pve1@example.com
        comment Send to multiple users/addresses

17.2.2. SMTP

SMTP 알림 대상은 이메일을 SMTP 메일 릴레이로 직접 보낼 수 있습니다.

SMTP 대상 플러그인 구성에는 다음과 같은 옵션이 있습니다.

  • mailto: 알림을 보낼 이메일 주소입니다. 여러 수신자를 수용하기 위해 여러 번 설정할 수 있습니다.
  • mailto-user: 이메일을 보낼 사용자입니다. 사용자의 이메일 주소는 users.cfg에서 조회됩니다. 여러 수신자를 수용하기 위해 여러 번 설정할 수 있습니다.
  • author: E-Mail의 작성자를 설정합니다. 기본값은 Proxmox VE입니다.
  • from-address: 이메일의 보낸 사람 주소를 설정합니다. SMTP 릴레이에서는 스푸핑을 방지하기 위해 이 주소를 사용자가 소유해야 할 수도 있습니다. 이메일의 From 헤더는 $author <$from-address>로 설정됩니다.
  • username: 인증 시 사용할 사용자 이름입니다. 사용자 이름이 설정되지 않으면 인증이 수행되지 않습니다. PLAIN 및 LOGIN 인증 방법이 지원됩니다.
  • password: 인증 시 사용할 비밀번호입니다.
  • mode: 암호화 모드(insecure, starttls 또는 tls)를 설정합니다. 기본값은 tls입니다.
  • server: SMTP 릴레이의 주소/IP
  • port: 연결할 포트입니다. 설정되지 않은 경우 사용되는 포트는 mode 값에 따라 기본적으로 25(비보안), 465(tls) 또는 587(starttls)로 설정됩니다.
  • comment: 이 대상에 대한 설명

구성 예(/etc/pve/notifications.cfg):

smtp: example
        mailto-user root@pam
        mailto-user admin@pve
        mailto max@example.com
        from-address pve1@example.com
        username pve1
        server mail.example.com
        mode starttls

비밀 토큰을 포함하는 /etc/pve/priv/notifications.cfg의 일치 항목:

smtp: example
        password somepassword

17.2.3. Gotify

Gotify는 다양한 장치 및 애플리케이션에 푸시 알림을 보내고 받을 수 있는 오픈 소스 자체 호스팅 알림 서버입니다. 간단한 API와 웹 인터페이스를 제공하므로 다양한 플랫폼 및 서비스와 쉽게 통합할 수 있습니다.

Gotify 대상 플러그인 구성에는 다음과 같은 옵션이 있습니다.

  • server: Gotify 서버의 기본 URL입니다. 예: http://:8888
  • token: 인증 토큰입니다. 토큰은 Gotify 웹 인터페이스 내에서 생성될 수 있습니다.
  • comment: 이 대상에 대한 설명

참고: Gotify 대상 플러그인은 데이터 센터 구성의 HTTP 프록시 설정을 존중합니다.

구성 예(/etc/pve/notifications.cfg):

gotify: example
        server http://gotify.example.com:8888
        comment Send to multiple users/addresses

비밀 토큰을 포함하는 /etc/pve/priv/notifications.cfg의 일치 항목:

gotify: example
        token somesecrettoken

17.3. 알림 일치자(matcher)

알림 매처는 일치 규칙에 따라 알림을 알림 대상으로 라우팅합니다. 이러한 규칙은 타임스탬프(일치 달력), 알림의 심각도(일치 심각도) 또는 메타데이터 필드(일치 필드)와 같은 알림의 특정 속성을 일치시킬 수 있습니다. 알림이 매처와 일치하면 해당 매처에 대해 구성된 모든 대상이 알림을 받습니다.

임의의 수의 일치자를 생성할 수 있으며, 각 일치자는 자체 일치 규칙과 알림 대상을 가지고 있습니다. 대상이 여러 매처에서 사용되는 경우에도 모든 대상은 모든 알림에 대해 최대 한 번만 알림을 받습니다.

일치 규칙이 없는 일치자는 항상 참입니다. 구성된 대상은 항상 알림을 받습니다.

matcher: always-matches
        target admin
        comment This matcher always matches

17.3.1. 일치자 옵션

  • target: 일치자가 일치하는 경우 어떤 대상에게 알림을 보낼지 결정합니다. 여러 대상에게 알리기 위해 여러 번 사용할 수 있습니다.
  • invert-match: 전체 일치자의 결과를 반전합니다.
  • mode: 전체 일치자에 대한 결과를 계산하기 위해 개별 일치 규칙을 평가하는 방법을 결정합니다. all로 설정하면 일치하는 모든 규칙이 일치해야 합니다. any로 설정된 경우 하나 이상의 규칙이 일치해야 합니다. 매처는 참이어야 합니다. 기본값은 all입니다.
  • match-calendar: 알림의 타임스탬프를 일정과 일치시킵니다.
  • match-field: 알림의 메타데이터 필드를 일치시킵니다.
  • match-severity: 알림의 심각도를 일치시킵니다.
  • comment: 이 매처에 대한 설명

17.3.2. 달력 일치 규칙

캘린더 매처는 구성 가능한 일정에 따라 알림이 전송되는 시간을 일치시킵니다.

  • match-calendar 8-12
  • match-calendar 8:00-15:30
  • match-calendar 월~금 9:00~17:00
  • match-calendar 일, 화-수, 금 9-17

17.3.3. 필드 일치 규칙

알림에는 일치시킬 수 있는 메타데이터 필드가 선택되어 있습니다.

  • match-field exact:type=vzdump 백업에 대한 알림만 일치합니다.
  • match-field regex:hostname=^.+.example.com$ 노드의 호스트 이름을 일치시킵니다.

일치하는 메타데이터 필드가 없으면 알림이 일치하지 않습니다. 예를 들어 match-field regex:hostname=.* 지시문은 임의 호스트 이름 메타데이터 필드가 있는 알림만 일치하지만 해당 필드가 없으면 일치하지 않습니다.

17.3.4. 심각도 일치 규칙

알림에는 일치시킬 수 있는 관련 심각도가 있습니다.

  • match-severity error: 일치 오류만 발생
  • match-severity warning,error: 일치 경고 및 오류

정보, 알림, 경고, 오류, 알 수 없음 심각도가 사용됩니다.

17.3.5. 예

matcher: workday
        match-calendar mon-fri 9-17
        target admin
        comment Notify admins during working hours

matcher: night-and-weekend
        match-calendar mon-fri 9-17
        invert-match true
        target on-call-admins
        comment Separate target for non-working hours
matcher: backup-failures
        match-field exact:type=vzdump
        match-severity error
        target backup-admins
        comment Send notifications about backup failures to one group of admins

matcher: cluster-failures
        match-field exact:type=replication
        match-field exact:type=fencing
        mode any
        target cluster-admins
        comment Send cluster-related notifications to other group of admins

마지막 일치자는 정규 표현식이 포함된 필드 일치자를 사용하여 다시 작성할 수도 있습니다.

matcher: cluster-failures
        match-field regex:type=^(replication|fencing)$
        target cluster-admins
        comment Send cluster-related notifications to other group of admins

17.4. 알림 이벤트

EventtypeSeverityMetadata fields (in addition to type)
System updates availablepackage-updatesinfohostname
Cluster node fencedfencingerrorhostname
Storage replication failedreplicationerror
Backup finishedvzdumpinfo (error on failure)hostname
Mail for rootsystem-mailunknown
Field nameDescription
typeType of the notifcation
hostnameHostname, including domain (e.g. pve1.example.com)

17.5. 시스템 메일 전달

smartd와 같은 특정 로컬 시스템 데몬은 처음에 로컬 루트 사용자에게 전달되는 알림 이메일을 생성합니다. Proxmox VE는 이러한 메일을 시스템 메일 유형 및 심각도를 알 수 없는 알림으로 알림 시스템에 공급합니다.

전달 프로세스에 이메일 기반 대상(예: sendmail 또는 smtp)이 포함된 경우 이메일은 모든 원본 메일 헤더가 그대로 유지된 채 수신된 그대로 전달됩니다. 다른 모든 대상의 경우 시스템은 이메일 콘텐츠에서 제목 줄과 본문 본문을 모두 추출하려고 시도합니다. 이메일이 HTML 콘텐츠로만 구성된 경우 이 프로세스 중에 일반 텍스트 형식으로 변환됩니다.

17.6. 권한

알림 대상에 대한 구성을 수정/보기 위해서는 /mapping/notifications ACL 노드에 Mapping.Modify/Mapping.Audit 권한이 필요합니다.

대상을 테스트하려면 /mapping/notifications에 대한 Mapping.Use, Mapping.Audit 또는 Mapping.Modify 권한이 필요합니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

You May Also Like
Read More

Proxmox VE 매뉴얼 : 15. 고가용성

Proxmox VE 매뉴얼을 Google Translate로 기계번역하고, 살짝 교정했습니다.https://pve.proxmox.com/pve-docs/pve-admin-guide.htmlversion 8.1.4, Wed Mar 6 18:21:39 CET 2024 우리 현대 사회는 네트워크를…