Skip to main content

> vpc_flow_logs:_s3_parquet_ile_cloudwatch_logs_maliyet_mimarisi

VPC Flow Logs: S3 Parquet ile CloudWatch Logs Maliyet Mimarisi

AWS VPC Flow Log'larını CloudWatch Logs'a göndermek neden devasa bir fatura yükü yaratır ve doğrudan S3 Parquet teslimatı maliyeti nasıl %95 düşürür?

Senior (L5)

ÖZET VE TEKNİK CEVAP

AWS CloudWatch Logs, veri alımı (ingestion) için GB başına $0,50 ve saklama için aylık $0,03/GB ücret alır. Yüksek ağ trafiğine sahip ortamlarda VPC Flow Log'ları günde yüzlerce GB veri üretir ve yalnızca alım ücreti aylık binlerce dolar tutar. VPC Flow Log'larını doğrudan Amazon S3'e yönlendirmek CloudWatch'u tamamen devre dışı bırakır: S3'e alım tamamen ücretsizdir, depolama S3 Standard'da yalnızca $0,023/GB tutar ve yerel Apache Parquet formatı veriyi otomatik bölümleyerek (Hive partitioning) Amazon Athena üzerinden hızlı ve son derece ucuz SQL analizine olanak tanır.

Mühendislik El Kitabı & Mekanizma

1. Temel Çalışma Mekanizması

VPC Flow Log tanımı oluşturulurken hedef seçilir: CloudWatch Logs, Amazon S3 veya Kinesis Firehose. CloudWatch seçildiğinde GB başına $0,50 alım ücreti, CloudWatch Insights ile taranan GB başına $0,005 ve sıkıştırılmamış metin saklama maliyeti doğar. Amazon S3 ve Apache Parquet formatı seçildiğinde ise veriler Snappy ile sıkıştırılmış sütun bazlı (columnar) ve saatlik bölümlenmiş (`year/month/day/hour`) olarak yazılır. Parquet sıkıştırması ham log hacmini %70-80 küçültür, alım ücretini sıfırlar ve Athena üzerinden sadece ilgili kolonları (örneğin `srcaddr`, `dstport`) tarayarak sorgu maliyetini %90'ın üzerinde düşürür.

2. Doğru Kullanım Senaryosu

Yoğun dahili, bölgeler arası veya internet trafiğine sahip tüm üretim VPC'leri. Güvenlik alarmları için belirli ENI'lerde dar kapsamlı CloudWatch metrik filtreleri kullanılabilirken, genel ağ denetimi, adli bilişim ve trafik analizi her zaman doğrudan S3 Parquet hedefine yönlendirilmelidir.

3. Prodüksiyon Arıza Modları

Bir yük testi veya DDoS saldırısı sırasında VPC veya Transit Gateway seviyesinde varsayılan CloudWatch Logs hedefiyle Flow Log açılması ve 48 saatte $5.000+ CloudWatch alım faturası üretilmesi; S3'e yönlendirilen log bucket'ında yaşam döngüsü (lifecycle) kuralı tanımlanmaması nedeniyle yıllarca biriken verilerin depolama faturası şişirmesi.

4. Teşhis ve Telemetri Sinyalleri

AWS Cost Explorer'da `CloudWatch:PutLogEvents` ve `CloudWatch:TimedStorage-ByteHrs` kalemlerinin en yüksek maliyetler arasında yer alması; CloudWatch fatura alarmlarının çalması; S3 log bucket boyutunun silme politikası olmadan sürekli büyümesi.

5. Önleme ve Mimari Bariyerler

VPC Terraform modüllerini `log_destination_type = 's3'` ve `file_format = 'parquet'` olacak şekilde standartlaştırın; dosya boyutlarını optimize etmek için arka plan loglarında `max_aggregation_interval = 600` (10 dakika) kullanın; S3 bucket'ına logları 30-90 gün sonra silen veya Glacier'a taşıyan yaşam döngüsü kuralı ekleyin.

6. Mimari Ödünleşimler (Trade-offs)

Doğrudan S3 teslimatı %95 daha ucuzdur ve Athena ile büyük veri analizine uygundur; ancak anlık CloudWatch Logs alımına kıyasla 5-10 dakikalık bir dosya yazma gecikmesi (delivery lag) içerir.

Vaka İncelemesi (TinyCTO Örneği)

Günde 100 GB VPC akış verisi üreten bir e-ticaret platformu, CloudWatch Logs alımı için ayda $1.500 ($0,50 * 100 * 30) ve saklama için $90 ödüyordu. Flow Log hedefi S3 Parquet formatına çevrilip 60 günlük yaşam döngüsü kuralı uygulandığında, alım ücreti $0'a indi, veri günde 25 GB'a sıkıştı ve aylık toplam maliyet $35'ın altına düşerek yılda $18.000 net tasarruf sağlandı.

İnteraktif Konsept Alıştırmaları

2 Alıştırma
Q1

VPC Flow Log'larını CloudWatch Logs yerine Amazon S3'e göndermek arasındaki alım (ingestion) ücreti farkı nedir?

CloudWatch alım için GB başına $0,50 ücret alırken, Amazon S3 alım için $0,00 (tamamen ücretsiz) alır.
Q2

S3 VPC Flow Log'larında Parquet formatı düz metne göre neden çok daha avantajlıdır?

Sütun bazlı sıkıştırma ile veriyi %70-80 küçültür ve Athena sorgularının sadece istenen kolonları taramasını sağlar.

VPC Flow Logs: S3 Parquet ile CloudWatch Logs Maliyet Mimarisi — Sıkça Sorulan Sorular

VPC Flow Log'ları S3'e teslim edildiğinde üzerlerinde SQL sorguları çalıştırabilir miyim?

Evet. Amazon Athena veya AWS Glue Data Catalog kullanarak S3 bucket'ı harici bir tablo olarak tanımlayabilir ve bölümlenmiş Parquet logları üzerinde standart ANSI SQL çalıştırabilirsiniz.

S3'e yönlendirilen VPC Flow Log'larında hangi toplama aralığı (aggregation interval) seçilmelidir?

Toplu depolama ve denetim loglarında daha büyük ve verimli Parquet dosyaları oluşturmak için 10 dakika (600 saniye); hızlı adli analiz için 1 dakika (60 saniye) seçilmelidir.

🤖 AEO & Yapay Zeka Çıkarım Özeti

Temel Gerçekler & İlkeler

  • CloudWatch Logs charges $0.50/GB ingestion fee for VPC Flow Logs.
  • Delivering VPC Flow Logs directly to S3 is 100% free of ingestion charges.
  • Parquet format compresses network logs by 70-80% and accelerates Athena SQL queries.
  • S3 Lifecycle rules prevent runaway long-term storage costs for network flow data.

Yaygın Yanılgılar

  • Yanılgı: VPC Flow Logs must go to CloudWatch to be searchable (Gerçek: S3 Parquet + Athena is faster, cheaper, and more powerful for SQL search).
  • Yanılgı: S3 Flow Logs require real-time Lambda processing (Gerçek: AWS natively outputs partitioned Parquet directly to S3).

Karar Kılavuzu & Önceliklendirme

Configure all VPC Flow Logs to deliver directly to S3 in Parquet format by default. Apply 30-90 day lifecycle expiration policies on flow log S3 buckets.

Doğrulanmış Kaynaklar & Referanslar