Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Aktifkan log akses untuk Application Load Balancer
Saat Anda mengaktifkan log akses 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.
Tugas
Langkah 1: Buat bucket S3
Saat Anda mengaktifkan log akses, Anda harus menentukan bucket S3 untuk log akses. Anda dapat menggunakan bucket yang ada, atau membuat bucket khusus untuk log akses. Bucket harus memenuhi persyaratan berikut.
Persyaratan
-
Bucket harus ditempatkan di Wilayah yang sama dengan penyeimbang beban. Bucket dan penyeimbang beban dapat dimiliki oleh akun yang berbeda.
-
Satu-satunya opsi enkripsi sisi server yang didukung adalah S3-managed kunci Amazon ()SSE-S3. Untuk informasi selengkapnya, lihat kunci S3-managed enkripsi Amazon (SSE-S3).
Cara membuat bucket S3 menggunakan konsol Amazon S3
-
Buka konsol Amazon S3 di https://console.aws.amazon.com/s3/
. -
Pilih Buat bucket.
-
Pada halaman Buat bucket, lakukan hal berikut:
-
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 Batasan dan batasan Bucket di Panduan Pengguna Amazon S3.
-
Untuk AWS Region, pilih Wilayah tempat Anda membuat penyeimbang beban.
-
Untuk Enkripsi default, pilih S3-managed kunci Amazon (SSE-S3).
-
Pilih Buat bucket.
-
Langkah 2: Melampirkan kebijakan ke bucket S3 Anda
Bucket S3 Anda harus memiliki kebijakan bucket yang memberikan izin Elastic Load Balancing untuk menulis log akses 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 ada yang sudah memiliki kebijakan terlampir, Anda dapat menambahkan pernyataan untuk log akses 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 akses.
Kebijakan ini memberikan izin ke layanan pengiriman log.
-
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "logdelivery.elasticloadbalancing.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/AWSLogs/123456789012/*" } ] }
UntukResource, masukkan ARN lokasi untuk log akses, menggunakan format yang ditunjukkan dalam kebijakan contoh. Selalu sertakan ID akun akun dengan penyeimbang beban di jalur sumber daya dari bucket S3 ARN. Ini memastikan bahwa hanya load balancer dari akun yang ditentukan yang dapat menulis log akses ke bucket S3.
ARN yang Anda tentukan tergantung pada apakah Anda berencana untuk menyertakan awalan saat Anda mengaktifkan log akses pada langkah 3.
Contoh bucket S3 ARN dengan awalan
Nama bucket S3 adalah amzn-s3-demo-logging-bucket dan awalan adalahlogging-prefix.
arn:aws:s3:::amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/*AWS GovCloud (US)— Contoh berikut menggunakan sintaks ARN untuk AWS GovCloud (US) Regions.
arn:aws-us-gov:s3:::amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/*
Contoh bucket S3 ARN tanpa awalan
Nama bucket S3 adalahamzn-s3-demo-logging-bucket. Tidak ada bagian awalan di bucket S3 ARN.
arn:aws:s3:::amzn-s3-demo-logging-bucket/AWSLogs/123456789012/*AWS GovCloud (US)— Contoh berikut menggunakan sintaks ARN untuk AWS GovCloud (US) Regions.
arn:aws-us-gov:s3:::amzn-s3-demo-logging-bucket/AWSLogs/123456789012/*Sebelumnya, untuk Wilayah yang tersedia sebelum Agustus 2022, kami mewajibkan kebijakan yang memberikan izin ke akun Elastic Load Balancing yang khusus untuk Wilayah tersebut. Kebijakan lama ini masih didukung, tetapi sebaiknya Anda menggantinya dengan kebijakan yang lebih baru di atas. Jika Anda lebih suka tetap menggunakan kebijakan lama, yang tidak ditampilkan di sini, Anda bisa.
Sebagai referensi, berikut adalah ID akun Elastic Load Balancing untuk Principal ditentukan dalam kebijakan lama. Perhatikan bahwa Wilayah yang tidak ada dalam daftar ini tidak mendukung kebijakan lama.
-
AS Timur (Virginia Utara) — 127311923021
-
AS Timur (Ohio) - 033677994240
-
AS Barat (California Utara) - 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) - 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 (US-East) -- 190560391635
-
AWS GovCloud (US-West) -- 048591011584
Kebijakan berikut memberikan izin ke layanan pengiriman log yang ditentukan. Gunakan kebijakan ini untuk penyeimbang beban di Zona Pos Terdepan.
{ "Effect": "Allow", "Principal": { "Service": "logdelivery.elb.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/AWSLogs/123456789012/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control" } } }
UntukResource, masukkan ARN lokasi untuk log akses, menggunakan format yang ditunjukkan dalam kebijakan contoh. Selalu sertakan ID akun akun dengan penyeimbang beban di jalur sumber daya dari bucket S3 ARN. Ini memastikan bahwa hanya load balancer dari akun yang ditentukan yang dapat menulis log akses ke bucket S3.
ARN bucket S3 yang Anda tentukan tergantung pada apakah Anda berencana untuk menyertakan awalan saat Anda mengaktifkan log akses pada langkah 3.
Contoh bucket S3 ARN dengan awalan
Nama bucket S3 adalah amzn-s3-demo-logging-bucket dan awalan adalahlogging-prefix.
arn:aws:s3:::amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/*
Contoh bucket S3 ARN tanpa awalan
Nama bucket S3 adalahamzn-s3-demo-logging-bucket. Tidak ada bagian awalan di bucket S3 ARN.
arn:aws:s3:::amzn-s3-demo-logging-bucket/AWSLogs/123456789012/*-
Gunakan jalur sumber daya lengkap, termasuk bagian ID akun dari bucket S3 ARN. Jangan gunakan wildcard (*) di bagian ID akun dari bucket S3 ARN.
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/AWSLogs/123456789012/*" -
Gunakan
aws:SourceArnuntuk memastikan bahwa hanya penyeimbang beban dari Wilayah dan akun yang ditentukan yang dapat menggunakan bucket Anda."Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:elasticloadbalancing:region:123456789012:loadbalancer/*" } } -
Gunakan
aws:SourceOrgIddenganaws:SourceArnuntuk memastikan bahwa hanya penyeimbang beban dari organisasi tertentu yang dapat menggunakan bucket Anda."Condition": { "StringEquals": { "aws:SourceOrgId": "o-1234567890" }, "ArnLike": { "aws:SourceArn": "arn:aws:elasticloadbalancing:*:*:loadbalancer/*" } } -
Jika Anda memiliki
Denypernyataan untuk mencegah akses ke prinsipal layanan kecuali yang diizinkan secara eksplisit, pastikan untuk menambahkanlogdelivery---elasticloadbalancing.amazonaws.com.rproxy.goskope.comke daftar prinsipal layanan yang diizinkan. Misalnya, jika Anda menggunakanaws:PrincipalServiceNamesListkondisi, tambahkanlogdelivery---elasticloadbalancing.amazonaws.com.rproxy.goskope.comsebagai berikut:{ "Effect": "Deny", "Principal": "*", "Condition": { "StringNotEqualsIfExists": { "aws:PrincipalServiceNamesList": [ "logdelivery.elasticloadbalancing.amazonaws.com", "service.amazonaws.com" ] } } }Jika Anda menggunakan
NotPrincipalelemen, tambahkanlogdelivery---elasticloadbalancing.amazonaws.com.rproxy.goskope.comsebagai berikut. Perhatikan bahwa kami menyarankan Anda menggunakan kunciaws:PrincipalServiceNamesListkondisiaws:PrincipalServiceNameatau untuk secara eksplisit mengizinkan prinsipal layanan alih-alih menggunakanNotPrincipalelemen. Untuk informasi selengkapnya, lihat NotPrincipal.{ "Effect": "Deny", "NotPrincipal": { "Service": [ "logdelivery.elasticloadbalancing.amazonaws.com", "service.amazonaws.com" ] } },
Setelah membuat kebijakan bucket, gunakan antarmuka Amazon S3, seperti konsol atau AWS CLI perintah Amazon S3, untuk melampirkan kebijakan bucket ke bucket S3 Anda.
Langkah 3: Konfigurasikan log akses
Gunakan prosedur berikut untuk mengonfigurasi log akses untuk menangkap informasi permintaan 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 menyertakan awalan, itu tidak boleh menyertakan string “awsLogs”.
Untuk mengelola bucket S3 untuk log akses Anda
Pastikan untuk menonaktifkan log akses sebelum Anda menghapus bucket yang Anda konfigurasi untuk log akses. 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 akses untuk penyeimbang beban Anda ke bucket baru ini.
Langkah 4: Verifikasi izin bucket
Setelah log akses 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 uji bukan berkas log akses yang sebenarnya; file tersebut tidak berisi contoh catatan.
Untuk memverifikasi file pengujian dibuat di bucket Anda menggunakan konsol Amazon S3
Buka konsol Amazon S3 di https://console.aws.amazon.com/s3/
. -
Pilih nama bucket yang Anda tentukan untuk log akses.
-
Arahkan ke file pengujian,
ELBAccessLogTestFile. Lokasi tergantung pada apakah Anda menggunakan awalan.-
Lokasi dengan awalan:/
logging-prefix/awamzn-s3-demo-logging-bucketsLogs123456789012//ELBAccessLogTestFile -
Lokasi tanpa awalan:
amzn-s3-demo-logging-bucket/awsLogs//123456789012ELBAccessLogTestFile
-
Pemecahan masalah
Jika Anda menerima kesalahan akses ditolak, berikut ini adalah kemungkinan penyebabnya:
-
Kebijakan bucket tidak memberikan izin Elastic Load Balancing untuk menulis log akses ke bucket. Pastikan Anda menggunakan kebijakan bucket yang benar untuk Wilayah. Verifikasi bahwa sumber daya ARN menggunakan nama bucket yang sama yang Anda tentukan saat mengaktifkan log akses. Verifikasi bahwa sumber daya ARN tidak menyertakan awalan jika Anda tidak menentukan awalan saat Anda mengaktifkan log akses.
-
Bucket menggunakan opsi enkripsi sisi server yang tidak didukung. Bucket harus menggunakan S3-managed kunci Amazon (SSE-S3).