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 Anda
Saat 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 ember S3
Saat mengaktifkan log akses, Anda harus menentukan bucket S3 untuk log akses. Anda dapat menggunakan bucket yang sudah 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 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
-
Buka konsol Amazon S3 di. https://console.aws.amazon.com/s3/
-
Pilih Buat bucket.
-
Pada halaman Create 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 Pembatasan dan batasan bucket di Panduan Pengguna Amazon S3.
-
Untuk AWS Region, pilih Wilayah tempat Anda membuat penyeimbang beban.
-
Untuk enkripsi Default, pilih kunci yang dikelola Amazon S3 (SSE-S3).
-
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 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 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 bucket S3 ARN. Ini memastikan bahwa hanya penyeimbang beban dari akun tertentu yang dapat menulis log akses ke bucket S3.
Contoh S3 bucket ARN dengan awalan
Nama bucket S3 adalah amzn-s3-demo-logging-bucket dan awalannya adalah. logging-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 S3 bucket ARN tanpa awalan
Nama bucket S3 adalahamzn-s3-demo-logging-bucket. Tidak ada bagian awalan di ember 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. Kebijakan lama ini masih didukung, namun 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 akun Elastic Load Balancing yang akan ditentukan Principal
dalam kebijakan lama. IDs Perhatikan bahwa Wilayah yang tidak ada dalam daftar ini tidak mendukung kebijakan lama.
-
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-Timur) — 190560391635
-
AWS GovCloud (AS-Barat) — 048591011584
Kebijakan berikut memberikan izin ke layanan pengiriman log yang ditentukan. Gunakan kebijakan ini untuk penyeimbang beban di Zona Outposts.
{ "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 bucket S3 ARN. Ini memastikan bahwa hanya penyeimbang beban dari akun tertentu yang dapat menulis log akses ke bucket S3.
Contoh S3 bucket ARN dengan awalan
Nama bucket S3 adalah amzn-s3-demo-logging-bucket dan awalannya adalah. logging-prefix
arn:aws:s3:::amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/*
Contoh S3 bucket ARN tanpa awalan
Nama bucket S3 adalahamzn-s3-demo-logging-bucket. Tidak ada bagian awalan di ember 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 ARN bucket S3.
"Resource": "arn:aws:s3:::
amzn-s3-demo-bucket
/prefix
/AWSLogs/123456789012
/*" -
Gunakan
aws:SourceArn
untuk memastikan bahwa hanya penyeimbang beban dari Wilayah dan akun tertentu yang dapat menggunakan bucket Anda."Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:elasticloadbalancing:
region
:123456789012
:loadbalancer/*" } } -
Gunakan
aws:SourceOrgId
denganaws:SourceArn
untuk 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
Deny
pernyataan untuk mencegah akses ke prinsipal layanan kecuali yang diizinkan secara eksplisit, pastikan untuk menambahkanlogdelivery.elasticloadbalancing.amazonaws.com
ke daftar prinsip layanan yang diizinkan. Misalnya, jika Anda menggunakanaws:PrincipalServiceNamesList
kondisi, tambahkanlogdelivery.elasticloadbalancing.amazonaws.com
sebagai berikut:{ "Effect": "Deny", "Principal": "*", "Condition": { "StringNotEqualsIfExists": { "aws:PrincipalServiceNamesList": [ "logdelivery.elasticloadbalancing.amazonaws.com", "
service
.amazonaws.com" ] } } }Jika Anda menggunakan
NotPrincipal
elemen, tambahkanlogdelivery.elasticloadbalancing.amazonaws.com
sebagai berikut. Perhatikan bahwa kami menyarankan Anda menggunakan kunciaws:PrincipalServiceName
oraws:PrincipalServiceNamesList
kondisi untuk secara eksplisit mengizinkan prinsip layanan alih-alih menggunakan elemen.NotPrincipal
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 Amazon S3 AWS CLI atau perintah, untuk melampirkan kebijakan bucket ke bucket S3.
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 menghapus bucket yang dikonfigurasi 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 telah 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:
amzn-s3-demo-logging-bucket
//logging-prefix
/AWSLogs/123456789012
ELBAccessLogTestFile -
Lokasi tanpa awalan:
amzn-s3-demo-logging-bucket
//AWSLogs/123456789012
ELBAccessLogTestFile
-
Penyelesaian 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. 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 akses. Verifikasi bahwa ARN sumber daya 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 kunci yang dikelola Amazon S3 (SSE-S3).