qumulo_audit_cloudwatch (Resource)¶
Manages CloudWatch audit log configuration on a Qumulo cluster.
This is a singleton resource (one per cluster). It configures the CloudWatch audit logging settings for sending audit events to AWS CloudWatch Logs.
~> Note: This resource manages a singleton configuration. Deleting this resource resets the CloudWatch audit configuration to disabled state rather than removing it.
~> Note: The cluster must have appropriate IAM permissions to write to CloudWatch Logs.
Ensure the cluster's IAM role has the necessary logs:CreateLogStream,
logs:DescribeLogGroups, logs:DescribeLogStreams, and
logs:PutLogEvents permissions for the specified log group. (Qumulo Core 7.9.0
audit log V2 requires the two Describe actions in addition to the write actions.)
Example Usage¶
Installation¶
terraform {
required_providers {
qumulo = {
source = "qumulo-terraform-registry.s3.us-east-1.amazonaws.com/qumulo/qumulo"
version = "~> 1.0"
}
}
}
Basic CloudWatch Configuration¶
resource "qumulo_audit_cloudwatch" "main" {
connection_profile = "prod"
enabled = true
log_group_name = "/qumulo/audit"
region = "us-west-2"
}
With AWS CloudWatch Log Group¶
resource "aws_cloudwatch_log_group" "qumulo_audit" {
name = "/qumulo/audit"
retention_in_days = 30
}
resource "qumulo_audit_cloudwatch" "main" {
connection_profile = "prod"
enabled = true
log_group_name = aws_cloudwatch_log_group.qumulo_audit.name
region = "us-west-2"
}
Multi-Cluster with for_each¶
variable "clusters" {
type = set(string)
default = ["prod", "dr"]
}
resource "qumulo_audit_cloudwatch" "all" {
for_each = var.clusters
connection_profile = each.value
enabled = true
log_group_name = "/qumulo/${each.key}/audit"
region = "us-west-2"
}
Import¶
using the connection profile name:
Schema¶
Required¶
connection_profile(String) Name of a connection profile defined in the provider block.
Connection profiles centralize cluster credentials at the provider level. Define profiles in the provider block:
provider "qumulo" {
connection_profiles = [
{
name = "prod"
endpoint = "https://cluster.example.com:8000"
username = "admin"
password = var.cluster_password
insecure_skip_verify = true # For self-signed certificates
}
]
}
enabled (Boolean) Enable CloudWatch audit logging.
Optional¶
log_group_name(String) The CloudWatch log group name. Required when enabled is true.region(String) The AWS region for CloudWatch. Required when enabled is true.