kuryr-kubernetes/kubernetes_crds/kuryr_crds/kuryrloadbalancer.yaml
Tabitha Fasoyin 87f6c66d31 Add option to set listener timeouts for lb created by Kuryr
The timeout-client-data and timeout-member-data configurations
for Octavia listeners default to 50 seconds for load balancers
created by Kuryr. This patch allows the creation and modification
of load balancers handled by Kuryr with different timeouts values.

Implements: blueprint configure-lb-listeners-timeout
Change-Id: I99016001c2263023d1fa2637d7b5aeb23b3b2d9d
2021-03-17 14:58:37 +00:00

242 lines
7.1 KiB
YAML

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: kuryrloadbalancers.openstack.org
spec:
group: openstack.org
scope: Namespaced
names:
plural: kuryrloadbalancers
singular: kuryrloadbalancer
kind: KuryrLoadBalancer
shortNames:
- klb
versions:
- name: v1
served: true
storage: true
additionalPrinterColumns:
- name: PROJECT-ID
type: string
description: The ID of the PROJECT associated to the loadbalancer
jsonPath: .spec.project_id
- name: Age
type: date
jsonPath: .metadata.creationTimestamp
schema:
openAPIV3Schema:
type: object
properties:
spec:
type: object
properties:
endpointSlices:
type: array
items:
type: object
properties:
endpoints:
type: array
items:
type: object
properties:
addresses:
type: array
items:
type: string
conditions:
type: object
properties:
ready:
type: boolean
hostname:
type: string
targetRef:
type: object
properties:
kind:
type: string
name:
type: string
namespace:
type: string
resourceVersion:
type: string
uid:
type: string
topology:
type: object
ports:
type: array
items:
type: object
properties:
name:
type: string
port:
type: integer
protocol:
type: string
ip:
type: string
lb_ip:
type: string
ports:
type: array
items:
type: object
required:
- port
- protocol
- targetPort
properties:
name:
type: string
port:
type: integer
protocol:
type: string
targetPort:
type: string
project_id:
type: string
security_groups_ids:
type: array
items:
type: string
subnet_id:
type: string
type:
type: string
provider:
type: string
timeout_client_data:
type: integer
timeout_member_data:
type: integer
status:
type: object
properties:
listeners:
type: array
items:
type: object
required:
- id
- loadbalancer_id
- name
- port
- project_id
- protocol
properties:
id:
type: string
loadbalancer_id:
type: string
name:
type: string
port:
type: integer
project_id:
type: string
protocol:
type: string
timeout_client_data:
type: integer
timeout_member_data:
type: integer
loadbalancer:
type: object
required:
- id
- ip
- name
- port_id
- project_id
- provider
- security_groups
- subnet_id
properties:
id:
type: string
ip:
type: string
name:
type: string
port_id:
type: string
project_id:
type: string
provider:
type: string
security_groups:
type: array
items:
type: string
subnet_id:
type: string
members:
type: array
items:
type: object
required:
- id
- ip
- name
- pool_id
- port
- project_id
- subnet_id
properties:
id:
type: string
ip:
type: string
name:
type: string
pool_id:
type: string
port:
type: integer
project_id:
type: string
subnet_id:
type: string
pools:
type: array
items:
type: object
required:
- id
- listener_id
- loadbalancer_id
- name
- project_id
- protocol
properties:
id:
type: string
listener_id:
type: string
loadbalancer_id:
type: string
name:
type: string
project_id:
type: string
protocol:
type: string
service_pub_ip_info:
type: object
required:
- ip_id
- ip_addr
- alloc_method
properties:
ip_id:
type: string
ip_addr:
type: string
alloc_method:
type: string