ALIYUN::NLB::ServerGroup digunakan untuk membuat grup server untuk instance Network Load Balancer (NLB).
Sintaksis
{
"Type": "ALIYUN::NLB::ServerGroup",
"Properties": {
"ResourceGroupId": String,
"Scheduler": String,
"AddressIPVersion": String,
"Servers": List,
"PreserveClientIpEnabled": Boolean,
"ServerGroupType": String,
"PersistenceEnabled": Boolean,
"ConnectionDrainEnabled": Boolean,
"ConnectionDrainTimeout": Integer,
"PersistenceTimeout": Integer,
"VpcId": String,
"HealthCheckConfig": Map,
"Protocol": String,
"ServerGroupName": String,
"Tags": List,
"AnyPortEnabled": Boolean
}
}Properti
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Batasan |
ResourceGroupId | String | Tidak | Tidak | ID grup sumber daya. | Tidak ada. |
Scheduler | String | Tidak | Tidak | Algoritma penjadwalan. | Nilai yang valid:
|
AddressIPVersion | String | Tidak | Tidak | Versi IP. | Nilai yang valid:
|
Servers | List | Tidak | Tidak | Server. | Untuk informasi lebih lanjut, lihat Properti Servers. |
PreserveClientIpEnabled | Boolean | Tidak | Tidak | Menentukan apakah akan mengaktifkan pelestarian IP klien. | Nilai yang valid:
|
ServerGroupType | String | Tidak | Tidak | Tipe grup server. | Nilai yang valid:
|
PersistenceEnabled | Boolean | Tidak | Tidak | Menentukan apakah akan mengaktifkan persistensi sesi. | Nilai yang valid:
|
ConnectionDrainEnabled | Boolean | Tidak | Tidak | Menentukan apakah akan mengaktifkan pengurasan koneksi. | Nilai yang valid:
|
ConnectionDrainTimeout | Integer | Tidak | Tidak | Periode timeout pengurasan koneksi. | Unit: detik. Nilai yang valid: 10 hingga 900. |
PersistenceTimeout | Integer | Tidak | Tidak | Periode timeout persistensi sesi. | Unit: detik. Nilai yang valid: 0 hingga 3600. |
VpcId | String | Ya | Tidak | ID virtual private cloud (VPC) tempat grup server berada. | Catatan Ketika Anda mengatur ServerGroupType ke Instance, Anda hanya dapat menambahkan server ke grup server jika server dan grup server berada dalam VPC yang sama. |
HealthCheckConfig | Map | Tidak | Tidak | Konfigurasi fitur pemeriksaan kesehatan. | Untuk informasi lebih lanjut, lihat Properti HealthCheckConfig. |
Protocol | String | Tidak | Tidak | Protokol backend. | Nilai yang valid:
|
ServerGroupName | String | Ya | Tidak | Nama grup server. | Nama harus memiliki panjang 2 hingga 128 karakter, dan dapat berisi huruf, angka, titik (.), garis bawah (_), dan tanda hubung (-). Harus dimulai dengan huruf. |
AnyPortEnabled | Boolean | Tidak | Tidak | Menentukan apakah akan mengaktifkan penerusan multi-port. | Nilai yang valid:
|
Tags | List | Tidak | Ya | Tag. | Untuk informasi lebih lanjut, lihat Properti Tags. |
Sintaksis Servers
"Servers": [
{
"ServerType": String,
"Description": String,
"ServerId": String,
"ServerIp": String,
"Port": Integer,
"Weight": Integer
}
]Properti Servers
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Batasan |
ServerType | String | Ya | Tidak | Tipe server backend. | Nilai yang valid:
|
Description | String | Tidak | Tidak | Deskripsi server backend. | Tidak ada. |
ServerId | String | Ya | Tidak | ID instance yang ingin Anda gunakan sebagai server backend. | Nilai yang valid:
Catatan Anda harus menentukan ServerType ketika ServerId diatur ke ID ENI atau instance kontainer elastis. |
ServerIp | String | Tidak | Tidak | Alamat IP Instance ECS, ENI, atau instance kontainer elastis. | Tidak ada. |
Port | Integer | Tidak | Tidak | Port yang ingin Anda gunakan untuk menerima permintaan. | Tidak ada. |
Weight | Integer | Tidak | Tidak | Bobot server backend. | Nilai yang valid: 0 hingga 100. Nilai default: 100. |
Sintaksis HealthCheckConfig
"HealthCheckConfig": {
"HealthCheckInterval": Integer,
"HealthCheckUrl": String,
"HealthCheckConnectPort": Integer,
"UnhealthyThreshold": Integer,
"HttpCheckMethod": String,
"HealthyThreshold": Integer,
"HealthCheckConnectTimeout": Integer,
"HealthCheckDomain": String,
"HealthCheckEnabled": Boolean,
"HealthCheckHttpCode": List,
"HealthCheckType": String
}Properti HealthCheckConfig
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Batasan |
HealthCheckInterval | Integer | Tidak | Tidak | Interval antara dua pemeriksaan kesehatan berturut-turut. | Unit: detik. Nilai yang valid: 5 hingga 50. Nilai default: 10. |
HealthCheckUrl | String | Tidak | Tidak | Path berdasarkan mana sistem melakukan pemeriksaan kesehatan. | Path harus memiliki panjang 1 hingga 80 karakter, dan hanya dapat berisi huruf, angka, karakter khusus - / . % ? # & =, serta karakter tambahan _ ; ~ ! ( ) * [ ] @ $ ^ : ' , +. Harus dimulai dengan garis miring (/). Catatan Properti ini berlaku ketika HealthCheckType diatur ke Http. |
HealthCheckConnectPort | Integer | Tidak | Tidak | Port backend yang ingin Anda gunakan untuk pemeriksaan kesehatan. | Nilai yang valid: 0 hingga 65535. Nilai default: 0. Nilai 0 menunjukkan bahwa port server backend digunakan untuk pemeriksaan kesehatan. |
UnhealthyThreshold | Integer | Tidak | Tidak | Jumlah kali server backend sehat harus gagal pemeriksaan kesehatan berturut-turut sebelum dinyatakan tidak sehat. | Nilai yang valid: 2 hingga 10. Nilai default: 2. |
HttpCheckMethod | String | Tidak | Tidak | Metode yang ingin Anda gunakan untuk pemeriksaan kesehatan. | Nilai yang valid:
Catatan Properti ini berlaku ketika HealthCheckType diatur ke Http. |
HealthyThreshold | Integer | Tidak | Tidak | Jumlah kali server backend tidak sehat harus lulus pemeriksaan kesehatan berturut-turut sebelum dinyatakan sehat. | Nilai yang valid: 2 hingga 10. Nilai default: 2. |
HealthCheckConnectTimeout | Integer | Tidak | Tidak | Periode timeout maksimum untuk respons pemeriksaan kesehatan. | Unit: detik. Nilai yang valid: 1 hingga 300. Nilai default: 5. |
HealthCheckDomain | String | Tidak | Tidak | Nama domain yang ingin Anda gunakan untuk pemeriksaan kesehatan. | Nilai yang valid:
Catatan Properti ini berlaku ketika HealthCheckType diatur ke Http. |
HealthCheckEnabled | Boolean | Tidak | Tidak | Menentukan apakah akan mengaktifkan fitur pemeriksaan kesehatan. | Nilai yang valid:
|
HealthCheckHttpCode | List | Tidak | Tidak | Kode status HTTP yang dikembalikan sistem untuk pemeriksaan kesehatan. | Pisahkan beberapa kode status HTTP dengan koma (,). Nilai yang valid:
Catatan Properti ini berlaku ketika HealthCheckType diatur ke Http. |
HealthCheckType | String | Tidak | Tidak | Protokol yang ingin Anda gunakan untuk pemeriksaan kesehatan. | Nilai yang valid:
|
Sintaksis Tags
"Tags": [
{
"Key": String,
"Value": String
}
]Properti Tags
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Batasan |
Key | String | Ya | Tidak | Kunci tag. | Tidak ada. |
Value | String | Tidak | Tidak | Nilai tag. | Tidak ada. |
Nilai Kembali
Fn::GetAtt
ServerGroupId: ID grup server.
Contoh
Berikut adalah contoh pembuatan grup server yang terkait dengan alamat IP tertentu.
ROSTemplateFormatVersion: '2015-09-01'
Description: ''
Parameters:
VpcId:
Type: String
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Resources:
NlbServerGroup:
Type: ALIYUN::NLB::ServerGroup
Properties:
Servers:
- ServerId: 10.1.1.102
ServerIp: 10.1.1.102
Port: 80
Weight: 100
ServerType: Ip
ServerGroupType: Ip
ServerGroupName: Test
VpcId:
Ref: VpcId
HealthCheckConfig:
HttpCheckMethod: Get
HealthCheckEnabled: true
HealthCheckConnectTimeout: Null
Protocol: TCP
Outputs: {}
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "",
"Parameters": {
"VpcId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
}
},
"Resources": {
"NlbServerGroup": {
"Type": "ALIYUN::NLB::ServerGroup",
"Properties": {
"Servers": [
{
"ServerId": "10.1.1.102",
"ServerIp": "10.1.1.102",
"Port": 80,
"Weight": 100,
"ServerType": "Ip"
}
],
"ServerGroupType": "Ip",
"ServerGroupName": "Test",
"VpcId": {
"Ref": "VpcId"
},
"HealthCheckConfig": {
"HttpCheckMethod": "Get",
"HealthCheckEnabled": true,
"HealthCheckConnectTimeout": null
},
"Protocol": "TCP"
}
}
},
"Outputs": {
}
}