Menambahkan aturan listener 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.

Menambahkan aturan listener untuk Application Load Balancer

Anda menentukan aturan default saat membuat listener. Anda dapat menentukan aturan tambahan kapan saja. Setiap aturan harus menentukan tindakan dan kondisi, dan secara opsional dapat menentukan transformasi. Untuk informasi selengkapnya, lihat berikut ini:

Console
Untuk menambahkan aturan
  1. Buka EC2 konsol Amazon di https://console.aws.amazon.com/ec2/.

  2. Pada panel navigasi, pilih Load Balancers.

  3. Pilih penyeimbang beban.

  4. Pada tab Listeners and rules, pilih teks di kolom Protocol:Port untuk membuka halaman detail bagi listener.

  5. Pada tab Aturan, pilih Tambahkan aturan.

  6. (Opsional) Untuk menentukan nama untuk aturan Anda, perluas Nama dan tag dan masukkan nama. Untuk menambahkan tag tambahan, pilih Tambahkan tag tambahan dan masukkan kunci tag dan nilai tag.

  7. Untuk setiap kondisi, pilih Tambahkan kondisi, pilih jenis kondisi, dan berikan nilai kondisi yang diperlukan:

    • Header Host - Pilih jenis pola kecocokan dan masukkan header host.

      Pencocokan nilai - Maksimum 128 karakter. Tidak peka terhadap huruf besar-kecil. Karakter yang diizinkan adalah a-z, A-Z, 0-9; karakter khusus berikut: -_.; dan wildcard (* dan?). Anda harus menyertakan setidaknya satu karakter ".". Anda hanya dapat memasukkan karakter alfabet setelah akhir karakter ".".

      Pencocokan Regex - Maksimum 128 karakter.

    • Path - Pilih jenis pola kecocokan dan masukkan jalur.

      Pencocokan nilai - Maksimum 128 karakter. Peka huruf besar/kecil. Karakter yang diizinkan adalah a-z, A-Z, 0-9; karakter khusus berikut: _-.$/~"'@: +; &; dan wildcard (* dan?).

      Pencocokan Regex - Maksimum 128 karakter.

    • String kueri - Masukkan pasangan kunci:nilai, atau nilai tanpa kunci.

      Maksimal 128 karakter. Tidak peka terhadap huruf besar-kecil. Karakter yang diizinkan adalah a-z, A-Z, 0-9; karakter khusus berikut: _-. $/~"'@: +& ()! ,; =; dan wildcard (* dan?).

    • Metode permintaan HTTP - Masukkan metode permintaan HTTP.

      Maksimal 40 karakter. Peka huruf besar/kecil. Karakter yang diizinkan adalah A-Z, dan karakter khusus berikut: -_. Wildcard tidak didukung.

    • Header HTTP - Pilih jenis pola kecocokan dan masukkan nama header dan string perbandingan.

      • Nama header HTTP - Aturan akan menilai permintaan yang berisi header ini untuk mengonfirmasi nilai yang cocok.

        Pencocokan nilai - Maksimum 40 karakter. Tidak peka terhadap huruf besar-kecil. Karakter yang diizinkan adalah a-z, A-Z, 0-9, dan karakter khusus berikut: *? -! #$%&'+.^_`|~. Wildcard tidak didukung.

        Pencocokan Regex - Maksimum 128 karakter.

      • Nilai header HTTP - Masukkan string untuk dibandingkan dengan nilai header HTTP.

        Pencocokan nilai Maksimum 128 karakter. Tidak peka terhadap huruf besar-kecil. Karakter yang diizinkan adalah a-z, A-Z, 0-9; spasi; karakter khusus berikut:! #$%&' () +,. /:; <=>@ [] ^_` {|} ~-; dan wildcard (* dan?).

        Pencocokan Regex - Maksimum 128 karakter.

    • Sumber IP — Tentukan alamat IP sumber dalam format CIDR. Keduanya IPv4 dan IPv6 CIDRs diizinkan. Wildcard tidak didukung.

  8. (Opsional) Untuk menambahkan transformasi, pilih Tambahkan transformasi, pilih jenis transformasi, dan masukkan ekspresi reguler untuk mencocokkan dan string pengganti.

  9. (Opsional) Untuk menambahkan aturan otentikasi ke pendengar HTTPS, pilih Tindakan, Otentikasi pengguna, pilih penyedia identitas, dan berikan informasi yang diperlukan. Untuk informasi selengkapnya, lihat Mengautentikasi pengguna menggunakan Application Load Balancer.

  10. Untuk Tindakan, Tindakan perutean, pilih salah satu tindakan perutean berikut dan berikan informasi yang diperlukan:

    • Teruskan ke grup sasaran - Pilih grup sasaran. Untuk menambahkan grup target lain, pilih Tambahkan grup target, pilih grup target, tinjau bobot relatif, dan perbarui bobot sesuai kebutuhan. Anda harus mengaktifkan kelengketan tingkat grup jika Anda mengaktifkan kekakuan pada salah satu grup target.

    • Redirect ke URL - Masukkan URL dengan memasukkan setiap bagian secara terpisah pada tab bagian URI, atau dengan memasukkan alamat lengkap pada tab URL Lengkap. Untuk kode Status, pilih sementara (HTTP 302) atau permanen (HTTP 301) berdasarkan kebutuhan Anda.

    • Kembalikan respons tetap - Masukkan kode Respons untuk mengembalikan permintaan klien yang dijatuhkan. Secara opsional, Anda dapat menentukan jenis Konten dan badan Respons.

  11. Pilih Berikutnya.

  12. Untuk Prioritas, masukkan nilai dari 1-50.000. Aturan dievaluasi dalam urutan prioritas dari nilai terendah ke nilai tertinggi.

  13. Pilih Berikutnya.

  14. Pada halaman Tinjau dan buat, pilih Buat.

AWS CLI
Untuk menambahkan aturan

Gunakan perintah create-rule.

Contoh berikut membuat aturan dengan forward tindakan dan host-header kondisi.

aws elbv2 create-rule \ --listener-arn listener-arn \ --priority 10 \ --conditions "Field=host-header,Values=example.com,www.example.com" \ --actions "Type=forward,TargetGroupArn=target-group-arn"

Untuk membuat tindakan maju yang mendistribusikan lalu lintas antara dua kelompok target, gunakan --actions opsi berikut sebagai gantinya.

--actions '[{ "Type":"forward", "ForwardConfig":{ "TargetGroups":[ {"TargetGroupArn":"target-group-1-arn","Weight":50}, {"TargetGroupArn":"target-group-2-arn","Weight":50} ] } }]'

Contoh berikut membuat aturan dengan fixed-response tindakan dan source-ip kondisi.

aws elbv2 create-rule \ --listener-arn listener-arn \ --priority 20 \ --conditions '[{"Field":"source-ip","SourceIpConfig":{"Values":["192.168.1.0/24","10.0.0.0/16"]}}]' \ --actions "Type=fixed-response,FixedResponseConfig={StatusCode=403,ContentType=text/plain,MessageBody='Access denied'}"

Contoh berikut membuat aturan dengan redirect tindakan dan http-header kondisi.

aws elbv2 create-rule \ --listener-arn listener-arn \ --priority 30 \ --conditions '[{"Field":"http-header","HttpHeaderConfig":{"HttpHeaderName":"User-Agent","Values":["*Mobile*","*Android*","*iPhone*"]}}]' \ --actions "Type=redirect,RedirectConfig={Host=m.example.com,StatusCode=HTTP_302}"
CloudFormation
Untuk menambahkan aturan

Tentukan sumber daya tipe AWS::ElasticLoadBalancingV2::ListenerRule.

Contoh berikut membuat aturan dengan forward tindakan dan host-header kondisi. Aturan mengirimkan lalu lintas ke grup target yang ditentukan ketika kondisi terpenuhi.

Resources: myForwardListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority: 10 Conditions: - Field: host-header Values: - example.com - www.example.com Actions: - Type: forward TargetGroupArn: !Ref myTargetGroup

Atau, untuk membuat tindakan maju yang mendistribusikan lalu lintas antara dua kelompok target ketika kondisi terpenuhi, tentukan Actions sebagai berikut.

Actions: - Type: forward ForwardConfig: TargetGroups: - TargetGroupArn: !Ref TargetGroup1 Weight: 50 - TargetGroupArn: !Ref TargetGroup2 Weight: 50

Contoh berikut membuat aturan dengan fixed-response tindakan dan source-ip kondisi.

Resources: myFixedResponseListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority: 20 Conditions: - Field: source-ip SourceIpConfig: Values: - 192.168.1.0/24 - 10.0.0.0/16 Actions: - Type: fixed-response FixedResponseConfig: StatusCode: 403 ContentType: text/plain MessageBody: "Access denied"

Contoh berikut membuat aturan dengan redirect tindakan dan http-header kondisi.

Resources: myRedirectListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority: 30 Conditions: - Field: http-header HttpHeaderConfig: HttpHeaderName: User-Agent Values: - "*Mobile*" - "*Android*" - "*iPhone*" Actions: - Type: redirect RedirectConfig: Host: m.example.com StatusCode: HTTP_302