Aktifkan log koneksi untuk Application Load Balancer - Elastic Load Balancing

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

Aktifkan log koneksi untuk Application Load Balancer

Saat mengaktifkan log koneksi untuk penyeimbang beban, Anda harus menentukan nama bucket S3 tempat penyeimbang beban akan menyimpan log. Bucket harus memiliki kebijakan bucket yang memberikan izin Elastic Load Balancing untuk menulis ke bucket.

Langkah 1: Buat ember S3

Saat Anda mengaktifkan log koneksi, Anda harus menentukan bucket S3 untuk log koneksi. Anda dapat menggunakan bucket yang sudah ada, atau membuat bucket khusus untuk log koneksi. Bucket harus memenuhi persyaratan berikut.

Persyaratan
  • Bucket harus ditempatkan di Wilayah yang sama dengan penyeimbang beban. Bucket dan load balancer dapat dimiliki oleh akun yang berbeda.

  • Satu-satunya opsi enkripsi sisi server yang didukung adalah kunci yang dikelola Amazon S3 (SSE-S3). Untuk informasi selengkapnya, lihat kunci enkripsi terkelola Amazon S3 (SSE-S3).

Untuk membuat bucket S3 menggunakan konsol Amazon S3
  1. Buka konsol Amazon S3 di https://console.aws.amazon.com/s3/.

  2. Pilih Buat bucket.

  3. Pada halaman Create bucket, lakukan hal berikut:

    1. Untuk Bucket name, masukkan nama untuk bucket Anda. Nama ini harus unik di semua nama bucket yang ada di Amazon S3. Di beberapa Wilayah, mungkin ada pembatasan tambahan pada nama bucket. Untuk informasi selengkapnya, lihat Pembatasan dan batasan Bucket di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

    2. Untuk AWS Region, pilih Wilayah tempat Anda membuat penyeimbang beban.

    3. Untuk enkripsi Default, pilih kunci yang dikelola Amazon S3 (SSE-S3).

    4. Pilih Buat bucket.

Langkah 2: Lampirkan kebijakan ke bucket S3 Anda

Bucket S3 Anda harus memiliki kebijakan bucket yang memberikan izin Elastic Load Balancing untuk menulis log koneksi ke bucket. Kebijakan bucket adalah kumpulan pernyataan JSON yang ditulis dalam bahasa kebijakan akses untuk menentukan izin akses untuk bucket Anda. Setiap pernyataan mencakup informasi tentang satu izin dan berisi serangkaian elemen.

Jika Anda menggunakan bucket yang sudah memiliki kebijakan terlampir, Anda dapat menambahkan pernyataan untuk log koneksi Elastic Load Balancing ke kebijakan. Jika Anda melakukannya, sebaiknya Anda mengevaluasi kumpulan izin yang dihasilkan untuk memastikan bahwa izin tersebut sesuai untuk pengguna yang memerlukan akses ke bucket untuk log koneksi.

Kebijakan bucket yang tersedia

Kebijakan bucket yang akan Anda gunakan bergantung pada Wilayah AWS dan jenis zona. Setiap bagian yang dapat diperluas di bawah ini berisi kebijakan bucket dan informasi tentang kapan harus menggunakan kebijakan tersebut.

Kebijakan ini memberikan izin ke layanan pengiriman log yang ditentukan. Gunakan kebijakan ini untuk penyeimbang beban di Availability Zone dan Local Zones di Wilayah berikut:

  • Asia Pasifik (Hyderabad)

  • Asia Pasifik (Melbourne)

  • Eropa (Spanyol)

  • Eropa (Zürich)

  • Israel (Tel Aviv)

  • Timur Tengah (UEA)

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "logdelivery.elasticloadbalancing.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::bucket-name/prefix/AWSLogs/aws-account-id/*" } ] }

Kebijakan ini memberikan izin ke ID akun Elastic Load Balancing yang ditentukan. Gunakan kebijakan ini untuk load balancers di Availability Zones atau Local Zones di Daerah pada daftar di bawah ini.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::elb-account-id:root" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::bucket-name/prefix/AWSLogs/aws-account-id/*" } ] }

Ganti elb-account-iddengan ID Elastic Load Balancing untuk Wilayah Anda: Akun AWS

  • AS Timur (Virginia N.) — 127311923021

  • AS Timur (Ohio) — 033677994240

  • AS Barat (California N.) — 027434742980

  • AS Barat (Oregon) — 797873946194

  • Afrika (Cape Town) — 098369216593

  • Asia Pasifik (Hong Kong) — 754344448648

  • Asia Pasifik (Jakarta) - 589379963580

  • Asia Pasifik (Mumbai) — 718504428378

  • Asia Pasifik (Osaka) — 383597477331

  • Asia Pasifik (Seoul) — 600734575887

  • Asia Pasifik (Singapura) — 114774131450

  • Asia Pasifik (Sydney) — 783225319266

  • Asia Pasifik (Tokyo) — 582318560864

  • Kanada (Tengah) — 985666609251

  • Eropa (Frankfurt am Main) — 054676820928

  • Eropa (Irlandia) — 156460612806

  • Eropa (London) — 652711504416

  • Eropa (Milan) — 635631232127

  • Eropa (Paris) — 009996457667

  • Eropa (Stockholm) — 897822967062

  • Timur Tengah (Bahrain) — 076674570225

  • Amerika Selatan (São Paulo) — 507241528517

  • AWS GovCloud (AS-Barat) — 048591011584

  • AWS GovCloud (AS-Timur) — 190560391635

Ganti my-s3-arn dengan ARN lokasi untuk log koneksi Anda. ARN yang Anda tentukan tergantung pada apakah Anda berencana untuk menentukan awalan saat Anda mengaktifkan log koneksi di langkah 3.

  • Contoh ARN dengan awalan

    arn:aws:s3:::bucket-name/prefix/AWSLogs/aws-account-id/*
  • Contoh ARN tanpa awalan

    arn:aws:s3:::bucket-name/AWSLogs/aws-account-id/*
Menggunakan NotPrincipal kapan EffectDeny.

Jika kebijakan bucket Amazon S3 digunakan Effect dengan nilai Deny dan menyertakan NotPrincipal seperti yang ditunjukkan pada contoh di bawah ini, pastikan kebijakan tersebut logdelivery.elasticloadbalancing.amazonaws.com disertakan dalam daftar. Service

{ "Effect": "Deny", "NotPrincipal": { "Service": [ "logdelivery.elasticloadbalancing.amazonaws.com", "example.com" },
Untuk melampirkan kebijakan bucket untuk log koneksi ke bucket Anda menggunakan konsol Amazon S3
  1. Buka konsol Amazon S3 di https://console.aws.amazon.com/s3/.

  2. Pilih nama bucket untuk membuka halaman detailnya.

  3. Pilih Izin lalu pilih Kebijakan Bucket, Edit.

  4. Perbarui kebijakan bucket untuk memberikan izin yang diperlukan.

  5. Pilih Simpan perubahan.

Langkah 3: Konfigurasikan log koneksi

Gunakan prosedur berikut untuk mengonfigurasi log koneksi untuk menangkap dan mengirimkan file log ke bucket S3 Anda.

Persyaratan

Bucket harus memenuhi persyaratan yang dijelaskan pada langkah 1, dan Anda harus melampirkan kebijakan bucket seperti yang dijelaskan pada langkah 2. Jika Anda menentukan awalan, itu tidak harus menyertakan string "AWSLogs”.

Untuk mengaktifkan log koneksi untuk penyeimbang beban Anda menggunakan konsol
  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Di panel navigasi, pilih Load Balancers.

  3. Pilih nama penyeimbang beban Anda untuk membuka halaman detailnya.

  4. Pada tab Atribut, pilih Edit.

  5. Untuk Pemantauan, nyalakan log Koneksi.

  6. Untuk URI S3, masukkan URI S3 untuk file log Anda. URI yang Anda tentukan bergantung pada apakah Anda menggunakan awalan.

    • URI dengan awalan: s3://bucket-name/prefix

    • URI tanpa awalan: s3://bucket-name

  7. Pilih Simpan perubahan.

Untuk mengaktifkan log koneksi menggunakan AWS CLI

Gunakan perintah modify-load-balancer-attributes.

Untuk mengelola bucket S3 untuk log koneksi Anda

Pastikan untuk menonaktifkan log koneksi sebelum Anda menghapus bucket yang Anda konfigurasikan untuk log koneksi. Jika tidak, jika ada bucket baru dengan nama yang sama dan kebijakan bucket yang diperlukan tetapi dibuat dalam bucket Akun AWS yang tidak Anda miliki, Elastic Load Balancing dapat menulis log koneksi untuk penyeimbang beban Anda ke bucket baru ini.

Langkah 4: Verifikasi izin bucket

Setelah log koneksi diaktifkan untuk penyeimbang beban Anda, Elastic Load Balancing memvalidasi bucket S3 dan membuat file pengujian untuk memastikan bahwa kebijakan bucket menentukan izin yang diperlukan. Anda dapat menggunakan konsol Amazon S3 untuk memverifikasi bahwa file uji dibuat. File pengujian bukan file log koneksi yang sebenarnya; itu tidak berisi catatan contoh.

Untuk memverifikasi bahwa Elastic Load Balancing membuat file uji di bucket S3 Anda
  1. Buka konsol Amazon S3 di https://console.aws.amazon.com/s3/.

  2. Pilih nama bucket yang Anda tentukan untuk log koneksi.

  3. Arahkan ke file pengujian,ELBConnectionLogTestFile. Lokasi tergantung pada apakah Anda menggunakan awalan.

    • Lokasi dengan awalan: my-bucket/prefix/AWSLogs/123456789012/ELBConnectionLogTestFile

    • Lokasi tanpa awalan: my-bucket/AWSLogs/123456789012/ELBConnectionLogTestFile

Pemecahan Masalah

Jika Anda menerima kesalahan akses ditolak, berikut ini adalah kemungkinan penyebabnya:

  • Kebijakan bucket tidak memberikan izin Elastic Load Balancing untuk menulis log koneksi ke bucket. Verifikasi bahwa Anda menggunakan kebijakan bucket yang benar untuk Wilayah tersebut. Verifikasi bahwa ARN sumber daya menggunakan nama bucket yang sama dengan yang Anda tentukan saat mengaktifkan log koneksi. Verifikasi bahwa ARN sumber daya tidak menyertakan awalan jika Anda tidak menentukan awalan saat Anda mengaktifkan log koneksi.

  • Bucket menggunakan opsi enkripsi sisi server yang tidak didukung. Bucket harus menggunakan kunci yang dikelola Amazon S3 (SSE-S3).