ALIYUN::ALB::Listener digunakan untuk membuat listener HTTP, HTTPS, atau Quick UDP Internet Connections (QUIC).
Sintaks
{
"Type": "ALIYUN::ALB::Listener",
"Properties": {
"RequestTimeout": Integer,
"ListenerPort": Integer,
"Http2Enabled": Boolean,
"DefaultActions": List,
"Certificates": List,
"IdleTimeout": Integer,
"LoadBalancerId": String,
"ListenerProtocol": String,
"QuicConfig": Map,
"GzipEnabled": Boolean,
"SecurityPolicyId": String,
"ListenerDescription": String,
"XForwardedForConfig": Map,
"CaEnabled": Boolean,
"CaCertificates": List,
"ListenerStatus": String,
"LogConfig": Map
}
}Properti
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Kendala |
DefaultActions | List | Ya | Ya | Aksi dari aturan pengalihan. | Nilai yang valid: Untuk informasi lebih lanjut, lihat properti DefaultActions. |
ListenerPort | Integer | Ya | Tidak | Port listener. | Nilai yang valid: 1 hingga 65535. |
ListenerProtocol | String | Ya | Tidak | Protokol listener. | Nilai yang valid:
|
LoadBalancerId | String | Ya | Tidak | ID instance Application Load Balancer (ALB). | Tidak ada. |
CaCertificates | List | Tidak | Ya | Sertifikat otoritas sertifikasi (CA). | Untuk informasi lebih lanjut, lihat properti CaCertificates. |
CaEnabled | Boolean | Tidak | Ya | Menentukan apakah akan mengaktifkan otentikasi timbal balik. | Nilai yang valid:
|
Certificates | List | Tidak | Ya | Sertifikat. | Untuk informasi lebih lanjut, lihat properti Certificates. |
GzipEnabled | Boolean | Tidak | Ya | Menentukan apakah akan mengaktifkan kompresi GNU zip (Gzip) untuk menekan jenis file tertentu. | Nilai yang valid:
|
Http2Enabled | Boolean | Tidak | Ya | Menentukan apakah akan mengaktifkan HTTP/2. | Nilai yang valid:
Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
IdleTimeout | Integer | Tidak | Ya | Periode timeout koneksi idle. | Nilai yang valid: 1 hingga 60. Nilai default: 15. Unit: detik. Jika tidak ada permintaan yang diterima dalam periode timeout yang ditentukan, ALB menutup koneksi saat ini. Saat permintaan lain diterima, ALB membuka koneksi baru. |
ListenerDescription | String | Tidak | Ya | Deskripsi listener. | Deskripsi harus memiliki panjang 2 hingga 256 karakter, |
ListenerStatus | String | Tidak | Ya | Status listener. | Nilai yang valid:
|
QuicConfig | Map | Tidak | Ya | Konfigurasi listener QUIC yang ingin Anda asosiasikan dengan listener HTTPS dari instance ALB. | Untuk informasi lebih lanjut, lihat properti QuicConfig. |
RequestTimeout | Integer | Tidak | Ya | Periode timeout permintaan. | Nilai yang valid: 1 hingga 180. Nilai default: 60. Unit: detik. Jika tidak ada respons yang diterima dari server backend dalam periode timeout yang ditentukan, ALB berhenti menunggu respons dan mengembalikan kode status HTTP 504 ke klien. |
SecurityPolicyId | String | Tidak | Ya | ID kebijakan keamanan. | Kebijakan keamanan sistem dan kustom didukung. Nilai default: tls_cipher_policy_1_0. Nilai ini menentukan kebijakan keamanan sistem. Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
XForwardedForConfig | Map | Tidak | Ya | Konfigurasi header X-Forwarded-For. | Untuk informasi lebih lanjut, lihat properti XForwardedForConfig. |
LogConfig | Map | Tidak | Ya | Konfigurasi log. | Untuk informasi lebih lanjut, lihat bagian "properti LogConfig" dari topik ini. |
Sintaks DefaultActions
"DefaultActions": [
{
"Type": String,
"ForwardGroupConfig": Map
}
]Properti DefaultActions
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Kendala |
ForwardGroupConfig | Map | Ya | Ya | Konfigurasi aksi. | Untuk informasi lebih lanjut, lihat properti ForwardGroupConfig. |
Type | String | Ya | Ya | Aksi. | Tetapkan nilai menjadi ForwardGroup. Nilai ini menentukan bahwa permintaan diteruskan ke beberapa grup server. |
Sintaks ForwardGroupConfig
"ForwardGroupConfig": {
"ServerGroupTuples": List
}Properti ForwardGroupConfig
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Kendala |
ServerGroupTuples | List | Ya | Ya | Grup server tempat permintaan diteruskan. | Untuk informasi lebih lanjut, lihat properti ServerGroupTuples. |
Sintaks ServerGroupTuples
"ServerGroupTuples": [
{
"ServerGroupId": String
}
]Properti ServerGroupTuples
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Kendala |
ServerGroupId | String | Ya | Ya | ID grup server tempat permintaan diteruskan. | Tidak ada. |
Sintaks Certificates
"Certificates": [
{
"CertificateId": String
}
]Properti Certificates
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Kendala |
CertificateId | String | Tidak | Ya | ID sertifikat. | Hanya sertifikat server yang didukung. |
Sintaks QuicConfig
"QuicConfig": {
"QuicListenerId": String,
"QuicUpgradeEnabled": Boolean
}Properti QuicConfig
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Kendala |
QuicListenerId | String | Tidak | Ya | ID listener QUIC. | Properti ini diperlukan jika Anda mengatur QuicUpgradeEnabled ke true. Catatan
|
QuicUpgradeEnabled | Boolean | Tidak | Ya | Menentukan apakah akan mengaktifkan peningkatan QUIC. | Nilai yang valid:
Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
Sintaks LogConfig
"LogConfig": {
"AccessLogTracingConfig": Map,
"AccessLogRecordCustomizedHeadersEnabled": Boolean
}Properti LogConfig
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Kendala |
AccessLogTracingConfig | Map | Tidak | Ya | Konfigurasi pelacakan log akses. | Untuk informasi lebih lanjut, lihat bagian "properti AccessLogTracingConfig" dari topik ini. |
AccessLogRecordCustomizedHeadersEnabled | Boolean | Tidak | Ya | Menentukan apakah akan mencatat header kustom dalam log akses. | Nilai yang valid:
|
Sintaks AccessLogTracingConfig
"AccessLogTracingConfig": {
"TracingSample": Integer,
"TracingType": String,
"TracingEnabled": Boolean
}Properti AccessLogTracingConfig
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Kendala |
TracingSample | Integer | Tidak | Ya | Tingkat sampling pelacakan. | Nilai yang valid: 1 hingga 10000. Catatan Properti ini berlaku ketika TracingEnabled diatur ke true. |
TracingType | String | Tidak | Ya | Jenis pelacakan. | Tetapkan nilai menjadi Zipkin. Catatan Properti ini berlaku ketika TracingEnabled diatur ke true. |
TracingEnabled | Boolean | Tidak | Ya | Menentukan apakah akan mengaktifkan fitur pelacakan. | Nilai yang valid:
Catatan Anda hanya dapat mengatur TracingEnabled ke true ketika AccessLogEnabled diatur ke true untuk mengaktifkan fitur log akses untuk instance ALB. |
Sintaks XForwardedForConfig
"XForwardedForConfig": {
"XForwardedForClientCertFingerprintAlias": String,
"XForwardedForClientCertFingerprintEnabled": Boolean,
"XForwardedForClientCertIssuerDNAlias": String,
"XForwardedForClientCertClientVerifyAlias": String,
"XForwardedForSLBIdEnabled": Boolean,
"XForwardedForClientCertSubjectDNEnabled": Boolean,
"XForwardedForClientCertSubjectDNAlias": String,
"XForwardedForProtoEnabled": Boolean,
"XForwardedForClientSrcPortEnabled": Boolean,
"XForwardedForSLBPortEnabled": Boolean,
"XForwardedForEnabled": Boolean,
"XForwardedForClientCertIssuerDNEnabled": Boolean,
"XForwardedForClientCertClientVerifyEnabled": Boolean,
"XForwardedForClientSourceIpsEnabled": Boolean,
"XForwardedForClientSourceIpsTrusted": String,
"XForwardedForProcessingMode": String,
"XForwardedForHostEnabled": Boolean
}Properti XForwardedForConfig
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Kendala |
XForwardedForClientCertClientVerifyAlias | String | Tidak | Ya | Nama header kustom. Anda dapat menggunakan properti ini untuk memeriksa hasil verifikasi sertifikat klien. | Properti ini berlaku hanya jika Anda mengatur XForwardedForClientCertClientVerifyEnabled ke true. Nama harus memiliki panjang 1 hingga 40 karakter dan dapat berisi huruf kecil, angka, garis bawah (_), dan tanda hubung (-). Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
XForwardedForClientCertClientVerifyEnabled | Boolean | Tidak | Ya | Menentukan apakah akan menggunakan header X-Forwarded-Clientcert-clientverify untuk memeriksa hasil verifikasi sertifikat klien. | Nilai yang valid:
Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
XForwardedForClientCertFingerprintAlias | String | Tidak | Ya | Nama header kustom. Anda dapat menggunakan properti ini untuk memeriksa sidik jari sertifikat klien. | Properti ini berlaku hanya jika Anda mengatur XForwardedForClientCertFingerprintEnabled ke true. Nama harus memiliki panjang 1 hingga 40 karakter dan dapat berisi huruf kecil, angka, garis bawah (_), dan tanda hubung (-). Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
XForwardedForClientCertFingerprintEnabled | Boolean | Tidak | Ya | Menentukan apakah akan menggunakan header X-Forwarded-Clientcert-fingerprint untuk memeriksa sidik jari sertifikat klien. | Nilai yang valid:
Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
XForwardedForClientCertIssuerDNAlias | String | Tidak | Ya | Nama header kustom. Anda dapat menggunakan properti ini untuk memeriksa informasi tentang CA yang menerbitkan sertifikat klien. | Properti ini berlaku hanya jika Anda mengatur XForwardedForClientCertIssuerDNEnabled ke true. Nama harus memiliki panjang 1 hingga 40 karakter dan dapat berisi huruf kecil, angka, garis bawah (_), dan tanda hubung (-). Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
XForwardedForClientCertIssuerDNEnabled | Boolean | Tidak | Ya | Menentukan apakah akan menggunakan header X-Forwarded-Clientcert-issuerdn untuk memeriksa informasi tentang CA yang menerbitkan sertifikat klien. | Nilai yang valid:
Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
XForwardedForClientCertSubjectDNAlias | String | Tidak | Ya | Nama header kustom. Anda dapat menggunakan properti ini untuk memeriksa informasi tentang pemilik sertifikat klien. | Properti ini berlaku hanya jika Anda mengatur XForwardedForClientCertSubjectDNEnabled ke true. Nama harus memiliki panjang 1 hingga 40 karakter dan dapat berisi huruf kecil, angka, garis bawah (_), dan tanda hubung (-). Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
XForwardedForClientCertSubjectDNEnabled | Boolean | Tidak | Ya | Menentukan apakah akan menggunakan header X-Forwarded-Clientcert-subjectdn untuk memeriksa informasi tentang pemilik sertifikat klien. | Nilai yang valid:
Catatan Anda hanya dapat mengonfigurasi properti ini untuk listener HTTPS. |
XForwardedForClientSourceIpsEnabled | Boolean | Tidak | Ya | Menentukan apakah akan menggunakan header X-Forwarded-Client-SourceIps untuk memeriksa port sumber klien. | Nilai yang valid:
|
XForwardedForClientSourceIpsTrusted | String | Tidak | Ya | Alamat IP proksi tepercaya. | Instance ALB melintasi alamat IP dalam header |
XForwardedForClientSrcPortEnabled | Boolean | Tidak | Ya | Menentukan apakah akan menggunakan header X-Forwarded-Client-Port untuk memeriksa port klien. | Nilai yang valid:
Catatan Anda dapat mengonfigurasi properti ini untuk listener HTTP dan HTTPS. |
XForwardedForEnabled | Boolean | Tidak | Ya | Menentukan apakah akan menggunakan header X-Forwarded-For untuk memeriksa alamat IP asli klien. | Nilai yang valid:
Catatan Anda dapat mengonfigurasi properti ini untuk listener HTTP dan HTTPS. |
XForwardedForProtoEnabled | Boolean | Tidak | Ya | Menentukan apakah akan menggunakan header X-Forwarded-Proto untuk memeriksa protokol listener instance ALB. | Nilai yang valid:
|
XForwardedForSLBIdEnabled | Boolean | Tidak | Ya | apakah akan menggunakan header SLB-ID untuk memeriksa ID instance ALB. | Nilai yang valid:
|
XForwardedForSLBPortEnabled | Boolean | Tidak | Ya | Menentukan apakah akan menggunakan header X-Forwarded-Port untuk memeriksa port listener instance ALB. | Nilai yang valid:
|
XForwardedForProcessingMode | String | Tidak | Ya | Metode untuk menangani header | Properti ini berlaku hanya ketika XForwardedForEnabled diatur ke true. Nilai yang valid:
Catatan
|
XForwardedForHostEnabled | Boolean | Tidak | Ya | Menentukan apakah akan menggunakan header | Nilai yang valid:
Catatan Listener HTTP, HTTPS, dan QUIC mendukung properti ini. |
Sintaks CaCertificates
"CaCertificates": [
{
"CertificateId": String
}
]Properti CaCertificates
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Kendala |
CertificateId | String | Tidak | Ya | ID sertifikat CA. | Tidak ada. |
Nilai Pengembalian
Fn::GetAtt
ListenerId: ID listener.
LoadBalancerId: ID instance ALB.
Contoh
YAML format
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
LoadBalancerId:
Type: String
Description: ID instance ALB.
Default: lb-bp1iilcd9ujny84z8****
Resources:
Listener:
Type: ALIYUN::ALB::Listener
Properties:
ListenerPort: 80
DefaultActions:
- ForwardGroupConfig:
ServerGroupTuples:
- ServerGroupId: sgp-46ndzg2wz4v5mp****
Type: ForwardGroup
LoadBalancerId:
Ref: LoadBalancerId
ListenerProtocol: HTTP
Outputs:
ListenerId:
Description: ID listener.
Value:
Fn::GetAtt:
- Listener
- ListenerId JSON format
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"LoadBalancerId": {
"Type": "String",
"Description": "ID instance ALB.",
"Default": "lb-bp1iilcd9ujny84z8****"
}
},
"Resources": {
"Listener": {
"Type": "ALIYUN::ALB::Listener",
"Properties": {
"ListenerPort": 80,
"DefaultActions": [
{
"ForwardGroupConfig": {
"ServerGroupTuples": [
{
"ServerGroupId": "sgp-46ndzg2wz4v5mp****"
}
]
},
"Type": "ForwardGroup"
}
],
"LoadBalancerId": {
"Ref": "LoadBalancerId"
},
"ListenerProtocol": "HTTP"
}
}
},
"Outputs": {
"ListenerId": {
"Description": "ID listener.",
"Value": {
"Fn::GetAtt": [
"Listener",
"ListenerId"
]
}
}
}
}