728x90
Audit log 파라미터 설정 시 발생하는 오류
기본적으로 terraform으로 AWS RDS의 MySQL을 구성했다면, 아래와 같이 감시 로그(audit_log)를 설정합니다.
# 감사 로그 이벤트 설정
parameter {
name = "server_audit_events"
value = "CONNECT,QUERY"
}
# 감사 로그 제외 사용자(rdsadmin)
parameter {
name = "server_audit_excl_users"
value = "rdsadmin"
}
...
그러나 위와 같은 파라미터 설정은 MySQL 8.0에서는 적용되지 않아, 아래와 같은 에러가 발생합니다.
Error: Error modifying DB Parameter Group: InvalidParameterValue: Could not find parameter with name: server_audit_logging
즉, server_audit_logging 파라미터가 MySQL 8.0 파라미터 그룹에서 지원되지 않는 것을 확인할 수 있습니다.
Audit log 설정을 위한 Option Group 사용
RDS for MySQL 데이터베이스 로그 개요 - Amazon Relational Database Service
이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오.
docs.aws.amazon.com
위의 공식문서를 참고해보면 감사로그를 활성화하려면 MARIADB_AUDIT_PLUGIN 옵션 그룹을 통해 옵션으로 감사 로그를 활성화해야 합니다.
옵션 값 자세히 보기
옵션명 | 설명 |
SERVER_AUDIT_LOGGING | 로깅 활성화 여부 |
SERVER_AUDIT_EVENTS | 기록할 이벤트 유형 (예: CONNECT, QUERY) |
SERVER_AUDIT_EXCL_USERS | 로깅 제외할 사용자 |
SERVER_AUDIT_QUERY_LOG_LIMIT | 쿼리 문자열 길이 제한 |
Terraform으로 Option Group 생성하기
위의 옵션 값을 토대로 수정한 최종 terraform 파일은 아래와 같습니다.
resource "aws_db_option_group" "mysql_audit_og" {
name = "mysql-audit-og"
option_group_description = "MariaDB Audit Plugin Option Group"
engine_name = "mysql"
major_engine_version = "8.0"
option {
option_name = "MARIADB_AUDIT_PLUGIN"
# 서버 감사 로깅 이벤트 설정
option_settings {
name = "SERVER_AUDIT_EVENTS"
value = "CONNECT,QUERY"
}
# 서버 감사 로깅 제외 사용자 설정(rdsadmin)
option_settings {
name = "SERVER_AUDIT_EXCL_USERS"
value = "rdsadmin"
}
# 서버 감사 로깅 활성화
option_settings {
name = "SERVER_AUDIT_LOGGING"
value = "ON"
}
}
tags = {
...
}
}
DB 인스턴스에 옵션 그룹 연결하기
옵션 그룹을 변경한 경우, 적용을 위해 인스턴스를 재시작해야 할 수 있습니다.
resource "aws_db_instance" "mysql-rds" {
...
# 옵션그룹 설정
option_group_name = aws_db_option_group.mysql_audit_og.name
...
그 후 위와 같이 db instance를 정의한 tf 파일에 옵션 그룹을 설정합니다.
728x90
'데브옵스 이야기' 카테고리의 다른 글
자고 일어나니 Argo Project Member? (19) | 2024.11.22 |
---|---|
명심 (3) | 2024.10.06 |
AWS S3 Bucket ACL은 권장사항이 아닙니더! (0) | 2024.08.20 |
[오픈소스 기여하기] 첫번째 기여 - ArgoCD (Implement graceful shutdown in application-controller) (2) | 2024.08.12 |