Terbitkan log alur ke Amazon S3 - Amazon Virtual Private Cloud

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Terbitkan log alur ke Amazon S3

Arus log dapat menerbitkan data log alur ke Amazon S3.

Ketika menerbitkan ke Amazon S3, data log alur diterbitkan ke bucket Amazon S3 yang ada yang Anda tentukan. Catatan log alur untuk semua antarmuka jaringan yang dipantau diterbitkan untuk serangkaian objek file berkas log yang disimpan dalam bucket. Jika log alur menangkap data untuk VPC, log alur menerbitkan catatan log alur untuk semua antarmuka jaringan di VPC yang dipilih.

Biaya penggunaan dan pengarsipan data untuk log penjual otomatis berlaku saat Anda menerbitkan log alur ke Amazon S3. Untuk informasi selengkapnya, lihatAmazon CloudWatch Harga.

Untuk membuat bucket Amazon S3 untuk digunakan dengan log alur, lihatBuat emberdi dalamPanduan Pengguna Amazon Simple Storage.

Untuk informasi selengkapnya tentang pencatatan beberapa akun, lihat Pencatatan Pusat dalam Perpustakaan Solusi AWS.

Untuk informasi lebih lanjut tentang CloudWatch Log, lihatLog yang dikirim ke Amazon S3di dalamAmazon CloudWatch Panduan Pengguna log.

Berkas log alur

Log alur VPC mengumpulkan catatan log alur, mengkonsolidasikannya ke berkas log, dan kemudian menerbitkan berkas log ke bucket Amazon S3 dengan interval 5 menit. Setiap file berkas log berisi catatan log alur untuk lalu lintas IP yang dicatat dalam lima menit sebelumnya.

Ukuran file maksimum untuk berkas log adalah 75 MB. File berkas log mencapai batas ukuran file dalam periode 5 menit, log alur berhenti menambahkan catatan log alur kepadanya. Kemudian menerbitkan log alur ke bucket Amazon S3, dan membuat file berkas log baru.

Dalam Amazon S3, bidang Terakhir diubah untuk berkas log alur menunjukkan tanggal dan waktu di mana file diunggah ke Amazon S3 bucket. Ini lebih lambat dari stempel waktu dalam nama file, dan berbeda dengan jumlah waktu yang dibutuhkan untuk mengunggah file ke bucket Amazon S3.

Format file log

Anda dapat menentukan salah satu format berikut untuk file log. Setiap file dikompresi menjadi file Gzip tunggal.

  • Text— Teks biasa. Ini adalah format default.

  • Parquet- Apache Parquet adalah format data kolumnar. Kueri data dalam format Parket 10 sampai 100 kali lebih cepat dibandingkan dengan kueri data dalam teks biasa. Data dalam format Parket dengan kompresi Gzip membutuhkan ruang penyimpanan 20 persen lebih sedikit daripada teks biasa dengan kompresi Gzip.

Opsi file log

Anda juga dapat menentukan opsi berikut.

  • Awalan S3 yang kompatibel dengan sarang- Aktifkan awalan yang kompatibel dengan sarang alih-alih mengimpor partisi ke alat yang kompatibel dengan sarang Anda. Sebelum Anda menjalankan kueri, gunakanMSCK REPAIR TABLEperintah.

  • Partisi per jam- Jika Anda memiliki volume log yang besar dan biasanya menargetkan kueri ke jam tertentu, Anda bisa mendapatkan hasil yang lebih cepat dan menghemat biaya kueri dengan mempartisi log setiap jam.

Struktur bucket S3 berkas log

Berkas log disimpan ke bucket Amazon S3 tertentu menggunakan struktur folder yang didasarkan pada ID, Wilayah, tanggal pembuatan, dan opsi tujuan.

Secara default, file dikirim ke lokasi berikut.

bucket-and-optional-prefix/AWSLogs/account_id/vpcflowlogs/region/year/month/day/

Jika Anda mengaktifkan awalan S3 yang kompatibel dengan Hive, file akan dikirim ke lokasi berikut.

bucket-and-optional-prefix/AWSLogs/aws-account-id=account_id/service=vpcflowlogs/aws-region=region/year=year/month=month/day=day/

Jika Anda mengaktifkan partisi per jam, file akan dikirim ke lokasi berikut.

bucket-and-optional-prefix/AWSLogs/account_id/vpcflowlogs/region/year/month/day/hour/

Jika Anda mengaktifkan partisi yang kompatibel dengan sarang dan mempartisi log aliran per jam, file akan dikirim ke lokasi berikut.

bucket-and-optional-prefix/AWSLogs/aws-account-id=account_id/service=vpcflowlogs/aws-region=region/year=year/month=month/day=day/hour=hour/

Nama file log

Nama file file log didasarkan pada ID log aliran, Wilayah, dan tanggal dan waktu pembuatan. Nama file menggunakan format berikut.

aws_account_id_vpcflowlogs_region_flow_log_id_YYYYMMDDTHHmmZ_hash.log.gz

Berikut ini adalah contoh file log alur yang dibuat olehAWSakun123456789012, untuk sumber daya dius-east-1Wilayah, padaJune 20, 2018pada16:20 UTC. File ini berisi catatan log alur dengan waktu akhir antara16:20:00dan16:24:59.

123456789012_vpcflowlogs_us-east-1_fl-1234abcd_20180620T1620Z_fe123456.log.gz

Kebijakan IAM untuk prinsipal IAM yang menerbitkan log alur ke Amazon S3

IAM prinsipal yang membuat log alur, seperti pengguna IAM, harus memiliki izin berikut, yang dibutuhkan untuk menerbitkan log alur ke bucket Amazon S3 tujuan.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogDelivery", "logs:DeleteLogDelivery" ], "Resource": "*" } ] }

Izin bucket Amazon S3 untuk log alur

Objek dan bucket Amazon S3 secara default bersifat privat. Hanya pemilik bucket yang bisa mengakses bucket dan objek yang tersimpan di dalamnya. Namun, pemilik bucket dapat memberikan akses kepada sumber daya dan pengguna lain dengan menulis kebijakan akses.

Jika pengguna membuat log aliran memiliki bucket dan memilikiPutBucketPolicydanGetBucketPolicyizin untuk bucket, kami secara otomatis melampirkan kebijakan berikut ke bucket. Kebijakan ini akan menggantikan kebijakan yang sebelumnya sudah melekat pada bucket.

Jika tidak, pemilik bucket harus menambahkan kebijakan ini ke bucket, dengan menentukanAWSID akun pembuat log aliran, atau pembuatan log aliran gagal. Untuk informasi selengkapnya, lihatMenggunakan kebijakan bucketdi dalamPanduan Pengguna Amazon Simple Storage.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSLogDeliveryWrite", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "my-s3-arn", "Condition": { "StringEquals": { "aws:SourceAccount": account_id, "s3:x-amz-acl": "bucket-owner-full-control" }, "ArnLike": { "aws:SourceArn": "arn:aws:logs:region:account_id:*" } } }, { "Sid": "AWSLogDeliveryAclCheck", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::bucket_name", "Condition": { "StringEquals": { "aws:SourceAccount": account_id }, "ArnLike": { "aws:SourceArn": "arn:aws:logs:region:account_id:*" } } } ] }

ARN yang Anda tentukanmy-s3tergantung pada apakah Anda menggunakan awalan S3 yang kompatibel dengan sarang.

  • Awalan default

    arn:aws:s3:::bucket_name/optional_folder/AWSLogs/account_id/*
  • Awalan S3 yang kompatibel dengan sarang

    arn:aws:s3:::bucket_name/optional_folder/AWSLogs/aws-account-id=account_id/*

Ini adalah praktik terbaik untuk memberikan izin ini ke prinsipal layanan pengiriman log bukan individuAkun AWSARN. Ini juga merupakan praktik terbaik untuk menggunakanaws:SourceAccountdanaws:SourceArnkunci kondisi untuk melindungimasalah confused deputy. Akun sumber adalah pemilik log aliran dan sumber ARN adalah wildcard (*) ARN dari layanan log.

Kebijakan utama yang diperlukan untuk digunakan dengan SSE-KMS

Anda dapat melindungi data di bucket Amazon S3 Anda dengan mengaktifkan Server-Side Encryption dengan Amazon S3 S3-Managed Keys (SSE-S3) atau Server-Side Encryption dengan KM Keys (SSE-KM). Untuk informasi selengkapnya, lihat Melindungi data menggunakan enkripsi sisi server di Panduan Pengguna Amazon S3.

Jika Anda memilih SSE-S3, tidak diperlukan konfigurasi tambahan. Amazon S3 menangani kunci enkripsi.

Jika Anda memilih SSE-KMS, Anda harus menggunakan kunci yang dikelola pelanggan. Anda harus memperbarui kebijakan kunci untuk kunci yang dikelola pelanggan Anda sehingga akun pengiriman log dapat menulis ke bucket S3 Anda. Untuk informasi lebih lanjut tentang kebijakan utama yang diperlukan untuk digunakan dengan SSE-KMS, lihatEnkripsi sisi server Amazon S3di dalamAmazon CloudWatch Panduan Pengguna log.

Izin file berkas log Amazon S3

Selain kebijakan bucket yang diperlukan, Amazon S3 menggunakan daftar kontrol akses (ACL) untuk mengelola akses ke berkas log yang dibuat oleh log alur. Secara default, pemilik bucket memiliki izin FULL_CONTROL pada setiap file berkas log. Pemilik pengiriman log, jika berbeda dari pemilik bucket, tidak memiliki izin. Akun pengiriman log memiliki izin READ dan WRITE. Untuk informasi selengkapnya, lihatIkhtisar Daftar Kontrol Akses (ACL)di dalamPanduan Pengguna Amazon Simple Storage.

Membuat log alur yang menerbitkan ke Amazon S3

Setelah membuat dan mengkonfigurasi bucket Amazon S3, Anda dapat membuat log alur untuk antarmuka jaringan, subnet, dan VPC Anda.

Untuk membuat log alur untuk antarmuka jaringan menggunakan konsol

  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Di panel navigasi, pilih Antarmuka Jaringan.

  3. Pilih kotak centang untuk satu atau beberapa antarmuka jaringan.

  4. MemMemiilihTindakan,Buat log alur.

  5. Konfigurasikan pengaturan log aliran. Untuk informasi selengkapnya, lihatUntuk mengonfigurasi pengaturan log alur.

Untuk membuat log alur untuk subnet menggunakan konsol

  1. Buka konsol Amazon VPC di https://console.aws.amazon.com/vpc/.

  2. Di panel navigasi, pilih Subnet.

  3. Pilih kotak centang untuk satu subnet atau lebih.

  4. MemMemiilihTindakan,Buat log alur.

  5. Konfigurasikan pengaturan log aliran. Untuk informasi selengkapnya, lihatUntuk mengonfigurasi pengaturan log alur.

Untuk membuat log alur untuk VPC menggunakan konsol

  1. Buka konsol Amazon VPC di https://console.aws.amazon.com/vpc/.

  2. Pada panel navigasi, pilih VPC Anda.

  3. Pilih kotak centang untuk satu atau lebih VPC.

  4. MemMemiilihTindakan,Buat log alur.

  5. Konfigurasikan pengaturan log aliran. Untuk informasi selengkapnya, lihatUntuk mengonfigurasi pengaturan log alur.

Untuk mengonfigurasi pengaturan log alur menggunakan konsol

  1. Untuk Filter, tentukan jenis data lalu lintas IP ke log.

    • Diterima— Log hanya diterima lalu lintas.

    • Ditolak— Log hanya ditolak lalu lintas.

    • Semua— Log diterima dan ditolak lalu lintas.

  2. Untuk Interval agregasi maksimum, pilih periode waktu maksimum selama aliran ditangkap dan dikumpulkan ke dalam satu catatan log alur.

  3. UntukTujuanMemiilihKirim ke bucket S3.

  4. Untuk ARN bucket S3, tentukan Amazon Resource Name (ARN) dari bucket Amazon S3 yang ada. Anda dapat menyertakan subfolder. Misalnya, untuk menentukan subfolder bernama my-logs dalam sebuah bucket bernama my-bucket, gunakan ARN berikut:

    arn:aws::s3:::my-bucket/my-logs/

    Bucket tidak dapat menggunakan AWSLogs sebagai nama subfolder, karena ini adalah istilah yang dicadangkan.

    Jika Anda memiliki bucket, kami secara otomatis membuat kebijakan sumber daya dan melampirkannya ke bucket. Untuk informasi selengkapnya, lihat Izin bucket Amazon S3 untuk log alur.

  5. UntukFormat catatan log, tentukan format untuk catatan log alur.

    • Untuk menggunakan format catatan log alur default, pilih format default AWS.

    • Untuk membuat format kustom, pilih Format kustom. Untuk Format log, pilih bidang untuk disertakan dalam catatan log alur.

  6. UntukFormat file log, tentukan format untuk file log.

    • Text— Teks biasa. Ini adalah format default.

    • Parquet- Apache Parquet adalah format data kolumnar. Kueri data dalam format Parket 10 sampai 100 kali lebih cepat dibandingkan dengan kueri data dalam teks biasa. Data dalam format Parket dengan kompresi Gzip membutuhkan ruang penyimpanan 20 persen lebih sedikit daripada teks biasa dengan kompresi Gzip.

  7. (Opsional) Untuk menggunakan awalan S3 yang kompatibel dengan sarang, pilihAwalan S3 yang kompatibel dengan sarang,Aktifkan.

  8. (Opsional) Untuk mempartisi log aliran Anda per jam, pilihSetiap 1 jam (60 menit).

  9. (Opsional) Untuk menambahkan tag ke log alur, pilihTambahkan tanda barudan tentukan tombol tanda dan nilai.

  10. Pilih Buat log alur.

Untuk membuat log alur yang menerbitkan ke Amazon S3 menggunakan alat baris perintah

Gunakan salah satu perintah berikut ini.

Contoh AWS CLI berikut ini membuat log alur yang menangkap semua lalu lintas untuk VPC vpc-00112233344556677 Dan mengirimkan log alur ke bucket Amazon S3 yang disebut flow-log-bucket. Parameter --log-format menentukan format kustom untuk catatan log alur.

aws ec2 create-flow-logs --resource-type VPC --resource-ids vpc-00112233344556677 --traffic-type ALL --log-destination-type s3 --log-destination arn:aws:s3:::flow-log-bucket/my-custom-flow-logs/ --log-format '${version} ${vpc-id} ${subnet-id} ${instance-id} ${srcaddr} ${dstaddr} ${srcport} ${dstport} ${protocol} ${tcp-flags} ${type} ${pkt-srcaddr} ${pkt-dstaddr}'

Catatan log alur proses di Amazon S3

Berkas log dikompresi. Jika Anda membuka berkas log menggunakan konsol Amazon S3, berkas log akan didekompresi dan catatan log alur ditampilkan. Jika Anda mengunduh berkas, Anda harus mendekompresi mereka untuk melihat catatan log alur.

Anda juga dapat meminta catatan log alur dalam berkas log menggunakan Amazon Athena. Amazon Athena adalah layanan kueri interaktif yang memudahkan analisa data di Amazon S3 menggunakan SQL standar. Untuk informasi lebih lanjut, lihat Meminta Log Alur Amazon VPC dalam Panduan Pengguna Amazon Athena.