全部产品
Search
文档中心

Resource Orchestration Service:ALIYUN::EDAS::K8sSlbBinding

更新时间:Jun 26, 2025

ALIYUN::EDAS::K8sSlbBinding digunakan untuk mengikat instance Server Load Balancer (SLB) ke aplikasi dalam kluster Container Service for Kubernetes (ACK).

Sintaksis

{
  "Type": "ALIYUN::EDAS::K8sSlbBinding",
  "Properties": {
    "Type": String,
    "AppId": String,
    "ClusterId": String,
    "Scheduler": String,
    "Specification": String,
    "LoadBalancerId": String,
    "ServicePortInfos": List
  }
}

Properti

PropertiTipeDiperlukanDapat DieditDeskripsiBatasan
TypeStringYaTidakJenis jaringan dari instance SLB. Nilai yang valid:
  • internet: Internet
  • Intranet: virtual private cloud (VPC)
AppIdStringYaTidakID aplikasi. Tidak ada.
ClusterIdStringYaTidakID kluster. Tidak ada.
SchedulerStringTidakTidakAlgoritma penjadwalan. Nilai default: rr. Nilai yang valid:
  • wrr: algoritma penjadwalan weighted round-robin (WRR). Server backend dengan bobot lebih tinggi menerima lebih banyak permintaan daripada server backend dengan bobot lebih rendah.
  • rr: algoritma penjadwalan round-robin (RR): Permintaan didistribusikan ke server backend secara berurutan.
SpecificationStringTidakTidakSpesifikasi instance SLB. Tidak ada.
LoadBalancerIdStringTidakTidakID instance SLB. Jika Anda tidak menentukan properti ini, Enterprise Distributed Application Service (EDAS) secara otomatis membeli instance SLB.
ServicePortInfosListYaTidakInformasi tentang port. Properti ini diperlukan jika Anda mengonfigurasi beberapa port atau menggunakan protokol selain TCP. Untuk informasi lebih lanjut, lihat properti ServicePortInfos.

Sintaksis ServicePortInfos

"ServicePortInfos": [
  {
    "TargetPort": Integer,
    "LoadBalancerProtocol": String,
    "CertId": String,
    "Port": Integer
  }
]

Properti ServicePortInfos

PropertiTipeDiperlukanDapat DieditDeskripsiBatasan
TargetPortIntegerYaTidakPort backend. Nilai yang valid: 1 hingga 65535.
LoadBalancerProtocolStringYaTidakProtokol yang digunakan oleh instance SLB. Nilai yang valid:
  • TCP
  • HTTPS
CertIdStringTidakTidakID sertifikat. Properti ini diperlukan ketika Anda mengatur properti LoadBalancerProtocol menjadi HTTPS.
PortIntegerYaTidakPort frontend. Nilai yang valid: 1 hingga 65535.

Nilai Pengembalian

Fn::GetAtt

  • LoadBalancerName: Nama instance SLB yang digunakan di EDAS.
  • Address: Alamat IP instance SLB.
  • AppId: ID aplikasi.
  • ChangeOrderId: ID proses perubahan.
  • LoadBalancerId: ID instance SLB.

Contoh

JSON format

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "Type": {
      "Type": "String",
      "Description": "Jenis instance SLB. Nilai yang valid: internet dan intranet.",
      "AllowedValues": [
        "internet",
        "intranet"
      ],
      "Default": "internet"
    },
    "AppId": {
      "Type": "String",
      "Description": "ID aplikasi.",
      "Default": "5a166fbd-****-****-a286-781659d9f54c"
    },
    "ClusterId": {
      "Type": "String",
      "Description": "ID kluster."
      "Default": "712082c3-f554-****-****-a947b5cde6ee"
    },
    "ServicePortInfos": {
      "Type": "Json",
      "Description": "Informasi tentang port.",
      "MinLength": 1,
      "Default": [
        {
          "TargetPort": 8080,
          "LoadBalancerProtocol": "TCP",
          "Port": 80
        }
      ]
    }
  },
  "Resources": {
    "K8sSlbBinding": {
      "Type": "ALIYUN::EDAS::K8sSlbBinding",
      "Properties": {
        "Type": {
          "Ref": "Type"
        },
        "AppId": {
          "Ref": "AppId"
        },
        "ClusterId": {
          "Ref": "ClusterId"
        },
        "ServicePortInfos": {
          "Ref": "ServicePortInfos"
        }
      }
    }
  },
  "Outputs": {
    "LoadBalancerName": {
      "Description": "Nama instance load balancer yang didefinisikan di EDAS.",
      "Value": {
        "Fn::GetAtt": [
          "K8sSlbBinding",
          "LoadBalancerName"
        ]
      }
    },
    "Address": {
      "Description": "Alamat instance load balancer.",
      "Value": {
        "Fn::GetAtt": [
          "K8sSlbBinding",
          "Address"
        ]
      }
    },
    "AppId": {
      "Description": "ID aplikasi.",
      "Value": {
        "Fn::GetAtt": [
          "K8sSlbBinding",
          "AppId"
        ]
      }
    },
    "ChangeOrderId": {
      "Description": "ID proses perubahan.",
      "Value": {
        "Fn::GetAtt": [
          "K8sSlbBinding",
          "ChangeOrderId"
        ]
      }
    },
    "LoadBalancerId": {
      "Description": "ID instance load balancer.",
      "Value": {
        "Fn::GetAtt": [
          "K8sSlbBinding",
          "LoadBalancerId"
        ]
      }
    }
  }
}