외부 syslog 서버 사용 시 고려 사항
외부 syslog 서버는 단일 위치에서 시스템 감사 정보를 수집하는 데 사용할 수 있는 StorageGRID 외부의 서버입니다. 외부 syslog 서버를 사용하면 관리 노드의 네트워크 트래픽을 줄이고 정보를 보다 효율적으로 관리할 수 있습니다. StorageGRID의 경우 아웃바운드 syslog 메시지 패킷 형식은 RFC 3164와 호환됩니다.
외부 syslog 서버로 보낼 수 있는 감사 정보의 유형은 다음과 같습니다.
-
정상적인 시스템 작동 중에 생성된 감사 메시지를 포함하는 감사 로그
-
로그인 및 루트 에스컬레이션과 같은 보안 관련 이벤트입니다
-
발생한 문제를 해결하기 위해 지원 케이스를 열어야 하는 경우 요청될 수 있는 응용 프로그램 로그
외부 syslog 서버를 사용해야 하는 경우
외부 syslog 서버는 큰 그리드가 있거나 여러 유형의 S3 애플리케이션을 사용하거나 모든 감사 데이터를 보존하려는 경우에 특히 유용합니다. 감사 정보를 외부 syslog 서버로 전송하면 다음을 수행할 수 있습니다.
-
감사 메시지, 응용 프로그램 로그 및 보안 이벤트와 같은 감사 정보를 보다 효율적으로 수집하고 관리합니다.
-
관리자 노드를 거치지 않고도 감사 정보가 다양한 스토리지 노드에서 외부 syslog 서버로 직접 전송되므로 관리자 노드의 네트워크 트래픽이 감소합니다.
로그가 외부 syslog 서버로 전송되면 메시지가 끝날 때 8,192바이트보다 큰 단일 로그가 잘려서 외부 syslog 서버 구현의 일반적인 제한 사항을 준수합니다. 외부 syslog 서버에 장애가 발생할 경우 전체 데이터 복구 옵션을 극대화하기 위해 (`localaudit.log`각 노드에서 최대 20GB의 감사 레코드 로컬 로그)가 유지됩니다.
외부 syslog 서버를 구성하는 방법
외부 syslog 서버를 구성하는 방법은 을 참조하십시오"감사 메시지 및 외부 syslog 서버를 구성합니다".
TLS 또는 RELP/TLS 프로토콜 사용을 구성하려면 다음 인증서가 있어야 합니다.
-
* 서버 CA 인증서 *: PEM 인코딩에서 외부 syslog 서버를 확인하기 위한 하나 이상의 신뢰할 수 있는 CA 인증서. 이 인수를 생략하면 기본 Grid CA 인증서가 사용됩니다.
-
* 클라이언트 인증서 * : PEM 인코딩에서 외부 syslog 서버에 인증하기 위한 클라이언트 인증서입니다.
-
* 클라이언트 개인 키 *: PEM 인코딩의 클라이언트 인증서에 대한 개인 키입니다.
클라이언트 인증서를 사용하는 경우 클라이언트 개인 키도 사용해야 합니다. 암호화된 개인 키를 제공하는 경우 암호문도 제공해야 합니다. 키와 암호를 저장해야 하므로 암호화된 개인 키를 사용하면 보안 상의 큰 이점이 없습니다. 사용 가능한 경우 암호화되지 않은 개인 키를 사용하는 것이 좋습니다.
외부 syslog 서버의 크기를 예측하는 방법
일반적으로, 그리드는 초당 S3 작업 또는 초당 바이트 수로 정의되는 필요한 처리량을 달성하도록 크기가 조정됩니다. 예를 들어, 그리드에서 1,000개의 초당 S3 작업, 즉 2,000개의 오브젝트 검색 및 검색을 처리해야 하는 요구사항이 있을 수 있습니다. 그리드의 데이터 요구 사항에 따라 외부 syslog 서버의 크기를 지정해야 합니다.
이 섹션에서는 외부 syslog 서버가 처리할 수 있어야 하는 다양한 유형의 로그 메시지 속도 및 평균 크기를 예측하는 데 도움이 되는 몇 가지 발견적 공식을 제공합니다. 이는 그리드의 알려진 성능 특성 또는 원하는 성능 특성(초당 S3 작업 수)을 기준으로 합니다.
계산 공식에서 초당 S3 작업을 사용합니다
그리드의 크기가 초당 바이트 수로 표시된 처리량인 경우 이 사이징을 초당 S3 작업으로 변환하여 추정 공식을 사용해야 합니다. 그리드 처리량을 변환하려면 먼저 평균 개체 크기를 확인해야 합니다. 이 크기는 기존 감사 로그 및 메트릭의 정보(있는 경우)를 사용하거나 StorageGRID를 사용할 애플리케이션에 대한 지식을 사용하여 확인할 수 있습니다. 예를 들어, 그리드의 크기가 2,000 MB/s의 처리량을 달성할 수 있도록 조정되었고 평균 오브젝트 크기가 2MB인 경우, 그리드는 초당 1,000 S3 작업(2,000MB/2MB)을 처리할 수 있도록 크기가 조정되었습니다.
다음 섹션의 외부 syslog 서버 크기 조정 공식은 최악의 경우를 추정하는 대신 일반적인 대/소문자 추정치를 제공합니다. 구성 및 워크로드에 따라 syslog 메시지 또는 syslog 데이터 볼륨이 수식에 따라 예측되는 것보다 높거나 낮을 수 있습니다. 수식은 지침으로만 사용됩니다. |
감사 로그의 계산 공식
그리드에서 지원해야 하는 초당 S3 작업 수 이외의 S3 작업 부하에 대한 정보가 없는 경우 외부 syslog 서버가 다음 공식을 사용하여 처리해야 하는 감사 로그 볼륨을 예측할 수 있습니다. 감사 수준을 기본값으로 설정했다고 가정합니다(오류 로 설정된 스토리지를 제외한 모든 범주는 보통 으로 설정됨).
Audit Log Rate = 2 x S3 Operations Rate Audit Log Average Size = 800 bytes
예를 들어, 그리드가 초당 1,000개의 S3 작업용으로 사이징된 경우 외부 syslog 서버는 초당 2,000개의 syslog 메시지를 지원하도록 크기를 조정해야 하며 초당 1.6MB의 속도로 감사 로그 데이터를 수신(일반적으로 저장)할 수 있어야 합니다.
당신이 당신의 업무량에 대해 더 알고 있다면, 더 정확한 예측들이 가능합니다. 감사 로그의 경우 가장 중요한 추가 변수는 다음 S3 필드의 값(GET 대비)과 평균 크기(바이트)입니다(표에 사용된 4자 약어는 감사 로그 필드 이름입니다).
코드 | 필드에 입력합니다 | 설명 |
---|---|---|
SACC |
S3 테넌트 계정 이름(요청 발신자) |
요청을 보낸 사용자의 테넌트 계정 이름입니다. 익명 요청에 대해 비어 있습니다. |
SBAC |
S3 테넌트 계정 이름(버킷 소유자) |
버킷 소유자의 테넌트 계정 이름입니다. 교차 계정 또는 익명 액세스를 식별하는 데 사용됩니다. |
에스쓰리비케이주식회사 |
S3 버킷 |
S3 버킷 이름입니다. |
에스3KY |
S3 키 |
버킷 이름을 제외한 S3 키 이름. 버킷에 대한 작업에는 이 필드가 포함되지 않습니다. |
P를 사용하여 S3 작업 중 위치, 0 ≤ P ≤ 1(100% put 워크로드, P=1 및 100% get 워크로드, P=0)의 비율을 표시하겠습니다.
K를 사용하여 S3 계정 이름, S3 버킷 및 S3 키의 합계에 대한 평균 크기를 나타내겠습니다. S3 계정 이름이 항상 -s3-계정(13바이트)이고, 버킷에는 /my/application/bucket-12345(28바이트)와 같은 고정 길이 이름이 있고, 오브젝트에는 5733a5d7-f069-411f-8fbd-13247494c69c(36바이트)와 같은 고정 길이 키가 있다고 가정해 보겠습니다. 그런 다음 K 값은 90(13+13+28+36)입니다.
P와 K의 값을 결정할 수 있는 경우 감사 수준을 기본값으로 설정했다는 가정 하에 외부 syslog 서버가 처리해야 하는 감사 로그 볼륨을 다음 공식을 사용하여 추정할 수 있습니다(스토리지를 제외한 모든 범주는 Normal로 설정됨). 오류 로 설정된 경우):
Audit Log Rate = ((2 x P) + (1 - P)) x S3 Operations Rate Audit Log Average Size = (570 + K) bytes
예를 들어, 그리드가 초당 1,000개의 S3 작업용으로 사이징된 경우, 작업 부하의 크기는 50%이고 S3 계정 이름, 버킷 이름은 개체 이름의 평균 90바이트는 외부 syslog 서버가 초당 1,500개의 syslog 메시지를 지원하도록 사이징되어야 하며, 일반적으로 초당 약 1MB의 속도로 감사 로그 데이터를 수신(및 저장)할 수 있어야 합니다.
기본 감사 수준이 아닌 감사 수준에 대한 계산 공식
감사 로그에 제공된 수식에서는 기본 감사 수준 설정(오류 로 설정된 스토리지를 제외한 모든 범주가 보통으로 설정됨)을 사용한다고 가정합니다. 기본값이 아닌 감사 수준 설정에 대한 감사 메시지의 비율 및 평균 크기를 추정하는 자세한 공식은 사용할 수 없습니다. 그러나 다음 표를 사용하여 요율을 대략적으로 추정할 수 있습니다. 감사 로그에 제공된 평균 크기 수식을 사용할 수 있지만 "추가" 감사 메시지는 평균적으로 기본 감사 메시지보다 작기 때문에 과대 평가로 이어질 수 있습니다.
조건 | 수식 |
---|---|
복제: 감사 수준 모두 디버그 또는 정상 으로 설정됩니다 |
감사 로그 비율 = 8 x S3 작업 비율 |
삭제 코딩: 모두 디버그 또는 정상 으로 설정된 감사 수준 |
기본 설정과 동일한 수식을 사용합니다 |
보안 이벤트의 계산 공식
보안 이벤트는 S3 운영과 관련이 없으며 일반적으로 최소한의 로그 및 데이터 볼륨을 생성합니다. 이러한 이유로 추정 공식은 제공되지 않습니다.
응용 프로그램 로그의 계산 공식
그리드에서 지원해야 하는 초당 S3 작업 수 이외의 S3 작업 부하에 대한 정보가 없는 경우 외부 syslog 서버에서 다음 공식을 사용하여 처리해야 하는 애플리케이션 로그 볼륨을 예측할 수 있습니다.
Application Log Rate = 3.3 x S3 Operations Rate Application Log Average Size = 350 bytes
예를 들어, 그리드가 초당 1,000개의 S3 작업용으로 사이징된 경우 외부 syslog 서버는 초당 3,300개의 애플리케이션 로그를 지원할 수 있도록 사이징되어야 하고 초당 약 1.2MB의 속도로 애플리케이션 로그 데이터를 수신 및 저장할 수 있어야 합니다.
당신이 당신의 업무량에 대해 더 알고 있다면, 더 정확한 예측들이 가능합니다. 애플리케이션 로그의 경우 가장 중요한 추가 변수는 데이터 보호 전략(복제 대 삭제 코딩), S3 작업의 백분율(GET/기타) 및 평균 크기(바이트)입니다(표에서 사용되는 4자 약어는 감사 로그 필드 이름입니다).
코드 | 필드에 입력합니다 | 설명 |
---|---|---|
SACC |
S3 테넌트 계정 이름(요청 발신자) |
요청을 보낸 사용자의 테넌트 계정 이름입니다. 익명 요청에 대해 비어 있습니다. |
SBAC |
S3 테넌트 계정 이름(버킷 소유자) |
버킷 소유자의 테넌트 계정 이름입니다. 교차 계정 또는 익명 액세스를 식별하는 데 사용됩니다. |
에스쓰리비케이주식회사 |
S3 버킷 |
S3 버킷 이름입니다. |
에스3KY |
S3 키 |
버킷 이름을 제외한 S3 키 이름. 버킷에 대한 작업에는 이 필드가 포함되지 않습니다. |
크기 예측의 예
이 섹션에서는 다음과 같은 데이터 보호 방법을 사용하여 그리드에 대한 예측 공식을 사용하는 방법의 예를 설명합니다.
-
복제
-
삭제 코딩
데이터 보호를 위해 복제를 사용하는 경우
P는 S3 작업의 비율을, 여기서 0 ≤ P ≤ 1(100% put 워크로드의 경우 P=1, 100% get 워크로드의 경우 P=0)을 나타냅니다.
K는 S3 계정 이름, S3 버킷 및 S3 키의 합계에 대한 평균 크기를 나타냅니다. S3 계정 이름이 항상 -s3-계정(13바이트)이고, 버킷에는 /my/application/bucket-12345(28바이트)와 같은 고정 길이 이름이 있고, 오브젝트에는 5733a5d7-f069-411f-8fbd-13247494c69c(36바이트)와 같은 고정 길이 키가 있다고 가정해 보겠습니다. 그런 다음 K의 값은 90(13+13+28+36)입니다.
P와 K의 값을 확인할 수 있는 경우, 외부 syslog 서버가 다음 공식을 사용하여 처리할 수 있어야 하는 애플리케이션 로그 볼륨을 예측할 수 있습니다.
Application Log Rate = ((1.1 x P) + (2.5 x (1 - P))) x S3 Operations Rate Application Log Average Size = (P x (220 + K)) + ((1 - P) x (240 + (0.2 x K))) Bytes
예를 들어, 그리드가 초당 1,000개의 S3 작업에 맞게 사이징된 경우 작업 부하가 50%이고 S3 계정 이름, 버킷 이름 및 오브젝트 이름이 평균 90바이트인 경우, 외부 syslog 서버는 초당 1800개의 애플리케이션 로그를 지원하도록 크기여야 합니다. 그리고 애플리케이션 데이터를 초당 0.5MB의 속도로 수신(일반적으로 저장)할 것입니다.
데이터 보호를 위해 삭제 코딩을 사용하는 경우
P는 S3 작업의 비율을, 여기서 0 ≤ P ≤ 1(100% put 워크로드의 경우 P=1, 100% get 워크로드의 경우 P=0)을 나타냅니다.
K는 S3 계정 이름, S3 버킷 및 S3 키의 합계에 대한 평균 크기를 나타냅니다. S3 계정 이름이 항상 -s3-계정(13바이트)이고, 버킷에는 /my/application/bucket-12345(28바이트)와 같은 고정 길이 이름이 있고, 오브젝트에는 5733a5d7-f069-411f-8fbd-13247494c69c(36바이트)와 같은 고정 길이 키가 있다고 가정해 보겠습니다. 그런 다음 K의 값은 90(13+13+28+36)입니다.
P와 K의 값을 확인할 수 있는 경우, 외부 syslog 서버가 다음 공식을 사용하여 처리할 수 있어야 하는 애플리케이션 로그 볼륨을 예측할 수 있습니다.
Application Log Rate = ((3.2 x P) + (1.3 x (1 - P))) x S3 Operations Rate Application Log Average Size = (P x (240 + (0.4 x K))) + ((1 - P) x (185 + (0.9 x K))) Bytes
예를 들어, 그리드가 초당 1,000개의 S3 작업에 대해 사이징된 경우 워크로드는 50%가 되고 S3 계정 이름, 버킷 이름 객체 이름은 평균 90바이트로, 외부 syslog 서버는 초당 2,250개의 애플리케이션 로그를 지원하도록 크기를 조정하고 초당 0.6MB의 속도로 애플리케이션 데이터를 수신(일반적으로 저장)할 수 있어야 합니다.