Files
cloudpods/docs/schemas/loadbalancer.yaml
T

316 lines
7.6 KiB
YAML

Loadbalancer:
type: object
description: Loadbalancer实例
properties:
id:
type: string
description: 实例uuid
readOnly: true
address:
type: string
description: 实例IP地址,即virtual ip
readOnly: true
LoadbalancerListener:
type: object
description: Loadbalancer监听实例
properties:
id:
type: string
description: 实例uuid
readOnly: true
loadbalancer_id:
type: string
description: 所属的loadbalancer的uuid
readOnly: true
listener_type:
type: string
description: 监听协议类型
enum:
- tcp
readOnly: true
listener_port:
type: integer
description: 监听端口,即virtual port
readOnly: true
scheduler:
type: string
description: 调度算法
readOnly: true
LoadbalancerBackendGroup:
type: object
description: Loadbalancer后端服务器组实例
properties:
id:
type: string
description: 实例uuid
readOnly: true
loadbalancer_id:
type: string
description: 所属的loadbalancer的uuid
readOnly: true
LoadbalancerBackend:
type: object
description: Loadbalancer后端实例
properties:
id:
type: string
description: 实例uuid
readOnly: true
backend_group_id:
type: string
description: 所属的loadbalancer后端服务器组uuid
readOnly: true
backend_type:
type: string
description: 后端服务器类型
readOnly: true
enum:
- guest
- host
- ip
address:
type: string
description: 后端IP地址,即real ip
readOnly: true
port:
type: string
description: 后端端口,即real port
readOnly: true
weight:
type: integer
description: 后端权重
LoadbalancerListResponse:
type: object
properties:
loadbalancers:
type: array
items:
$ref: '#/Loadbalancer'
LoadbalancerResponse:
type: object
properties:
loadbalancer:
type: object
$ref: '#/Loadbalancer'
LoadbalancerListenerCreateRequest:
type: object
properties:
loadbalancerlistener:
type: object
required:
- loadbalancer
- listener_type
- listener_port
- scheduler
properties:
loadbalancer:
type: string
description: 指定loadbalaner实例uuid
listener_type:
type: string
enum:
- tcp
description: 指定loadbalaner监听协议
listener_port:
type: integer
description: 指定loadbalaner监听端口
scheduler:
type: string
description: 指定监听的调度算法
enum:
- rr
- wrr
- wlc
- sch
- tch
backend_group:
type: string
description: 指定后端服务器组uuid
LoadbalancerListenerListResponse:
type: object
properties:
loadbalancerlisteners:
type: array
items:
$ref: '#/LoadbalancerListener'
LoadbalancerListenerResponse:
type: object
properties:
loadbalancerlistener:
type: object
$ref: '#/LoadbalancerListener'
LoadbalancerBackendGroupListResponse:
type: object
properties:
loadbalancerbackendgroups:
type: array
items:
$ref: '#/LoadbalancerBackendGroup'
LoadbalancerBackendGroupResponse:
type: object
properties:
loadbalancerbackendgroup:
type: object
$ref: '#/LoadbalancerBackendGroup'
LoadbalancerBackendCreateRequest:
type: object
properties:
loadbalancerbackend:
type: object
required:
- backend_group
- backend_type
- backend
- port
- weight
properties:
backend_group:
type: string
description: 指定loadbalaner后端服务器组uuid
backend_type:
type: string
enum:
- guest
- host
- ip
description: 指定后端服务器的类型。仅管理员能够指定host, ip为后端服务器
backend:
type: string
description: 后端服务器的标识信息
当backend_type为guest时,该字段的值应当是服务器的uuid
当backend_type为host时,该字段的值应为宿主机的uuid
当backend_type为ip时,该字段的值应为有效的IP地址
port:
type: integer
description: 后端服务器的端口
weight:
type: integer
description: 后端服务器的权重
LoadbalancerBackendListResponse:
type: object
properties:
loadbalancerbackends:
type: array
items:
$ref: '#/LoadbalancerBackend'
LoadbalancerBackendResponse:
type: object
properties:
loadbalancerbackend:
type: object
$ref: '#/LoadbalancerBackend'
LoadbalancerAclEntry:
type: object
properties:
cidr:
type: string
example: 192.168.0.1/24
description: 网段
readOnly: true
comment:
type: string
description: 注释
readOnly: true
LoadbalancerAclEntries:
type: array
items:
$ref: '#/LoadbalancerAclEntry'
LoadbalancerCachedAcl:
allOf:
- $ref: "./common.yaml#/SharableVirtualResourceBaseResponse"
- $ref: "./common.yaml#/ExternalizedResourceBaseResponse"
- type: object
properties:
acl_id:
type: string
description: 所属的本地访问控制uuid
acl_entries:
$ref: "#/LoadbalancerAclEntries"
LoadbalancerCachedAclResponse:
$ref: "#/LoadbalancerCachedAcl"
LoadbalancerCachedAclListResponse:
type: object
properties:
cached_loadbalancer_acls:
type: array
items:
$ref: "#/LoadbalancerCachedAcl"
LoadbalancerCachedCertificate:
allOf:
- $ref: "./common.yaml#/SharableVirtualResourceBaseResponse"
- $ref: "./common.yaml#/ExternalizedResourceBaseResponse"
- type: object
properties:
certificate_id:
type: string
example: ab58813d83284a7f95040901639013d3
description: 所属的本地证书uuid
readOnly: true
private_key:
type: string
description: 私钥内容
readOnly: true
publicKey_algorithm:
type: string
description: 公钥算法
readOnly: true
publicKey_bitLen:
type: int
description: 公钥长度
readOnly: true
signature_algorithm:
type: string
description: 签名算法
readOnly: true
fingerprint:
type: string
example: sha1:da:39:a3:ee:5e:6b:4b:0d:32:55:bf:ef:95:60:18:90:af:d8:07:09
description: 证书指纹
readOnly: true
not_before:
type: string
example: 2019-05-23T11:50:33.000000Z
description: 最早生效时间
readOnly: true
not_after:
type: string
example: 2020-05-23T11:50:33.000000Z
description: 失效时间
readOnly: true
common_name:
type: string
example: www.onecloud.com
description: 域名
readOnly: true
subject_alternative_names:
type: string
example: ''
description: 附加域名
readOnly: true
LoadbalancerCachedCertificateResponse:
$ref: "#/LoadbalancerCachedCertificate"
LoadbalancerCachedCertificateListResponse:
type: object
properties:
cached_loadbalancercertificates:
type: array
items:
$ref: "#/LoadbalancerCachedCertificate"