Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose head service ServiceSpec #1035

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
148 changes: 148 additions & 0 deletions helm-chart/kuberay-operator/crds/ray.io_rayclusters.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -353,6 +353,154 @@ spec:
description: EnableIngress indicates whether operator should create
ingress object for head service or not.
type: boolean
headServiceSpec:
description: HeadServiceSpec is the Kubernetes ServiceSpec of
the head service.
properties:
Copy link
Contributor Author

@architkulkarni architkulkarni Apr 18, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Everything on and below this line (properties:) was autogenerated by make helm. I'm not sure how it works, but it looks reasonable.

allocateLoadBalancerNodePorts:
description: allocateLoadBalancerNodePorts defines if NodePorts
will be automatically allocated for services with
type: boolean
clusterIP:
description: clusterIP is the IP address of the service and
is usually assigned randomly.
type: string
clusterIPs:
description: ClusterIPs is a list of IP addresses assigned
to this service, and are usually assigned randomly.
items:
type: string
type: array
x-kubernetes-list-type: atomic
externalIPs:
description: externalIPs is a list of IP addresses for which
nodes in the cluster will also accept traffic for th
items:
type: string
type: array
externalName:
description: externalName is the external reference that discovery
mechanisms will return as an alias for this se
type: string
externalTrafficPolicy:
description: externalTrafficPolicy denotes if this Service
desires to route external traffic to node-local or clu
type: string
healthCheckNodePort:
description: healthCheckNodePort specifies the healthcheck
nodePort for the service.
format: int32
type: integer
internalTrafficPolicy:
description: InternalTrafficPolicy specifies if the cluster
internal traffic should be routed to all endpoints or
type: string
ipFamilies:
description: IPFamilies is a list of IP families (e.g. IPv4,
IPv6) assigned to this service.
items:
description: IPFamily represents the IP Family (IPv4 or
IPv6).
type: string
type: array
x-kubernetes-list-type: atomic
ipFamilyPolicy:
description: IPFamilyPolicy represents the dual-stack-ness
requested or required by this Service.
type: string
loadBalancerClass:
description: loadBalancerClass is the class of the load balancer
implementation this Service belongs to.
type: string
loadBalancerIP:
description: 'Only applies to Service Type: LoadBalancer LoadBalancer
will get created with the IP specified in th'
type: string
loadBalancerSourceRanges:
description: If specified and supported by the platform, this
will restrict traffic through the cloud-provider lo
items:
type: string
type: array
ports:
description: 'The list of ports that are exposed by this service.
More info: https://kubernetes.'
items:
description: ServicePort contains information on service's
port.
properties:
appProtocol:
description: The application protocol for this port.
This field follows standard Kubernetes label syntax.
type: string
name:
description: The name of this port within the service.
This must be a DNS_LABEL.
type: string
nodePort:
description: The port on each node on which this service
is exposed when type is NodePort or LoadBalancer.
format: int32
type: integer
port:
description: The port that will be exposed by this service.
format: int32
type: integer
protocol:
default: TCP
description: The IP protocol for this port. Supports
"TCP", "UDP", and "SCTP". Default is TCP.
type: string
targetPort:
anyOf:
- type: integer
- type: string
description: Number or name of the port to access on
the pods targeted by the service.
x-kubernetes-int-or-string: true
required:
- port
type: object
type: array
x-kubernetes-list-map-keys:
- port
- protocol
x-kubernetes-list-type: map
publishNotReadyAddresses:
description: publishNotReadyAddresses indicates that any agent
which deals with endpoints for this Service should
type: boolean
selector:
additionalProperties:
type: string
description: Route service traffic to pods with label keys
and values matching this selector.
type: object
x-kubernetes-map-type: atomic
sessionAffinity:
description: Supports "ClientIP" and "None". Used to maintain
session affinity.
type: string
sessionAffinityConfig:
description: sessionAffinityConfig contains the configurations
of session affinity.
properties:
clientIP:
description: clientIP contains the configurations of Client
IP based session affinity.
properties:
timeoutSeconds:
description: timeoutSeconds specifies the seconds
of ClientIP type session sticky time.
format: int32
type: integer
type: object
type: object
type:
description: type determines how the Service is exposed. Defaults
to ClusterIP.
type: string
type: object
rayStartParams:
additionalProperties:
type: string
Expand Down
154 changes: 154 additions & 0 deletions helm-chart/kuberay-operator/crds/ray.io_rayjobs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -361,6 +361,160 @@ spec:
description: EnableIngress indicates whether operator should
create ingress object for head service or not.
type: boolean
headServiceSpec:
description: HeadServiceSpec is the Kubernetes ServiceSpec
of the head service.
properties:
allocateLoadBalancerNodePorts:
description: allocateLoadBalancerNodePorts defines if
NodePorts will be automatically allocated for services
with
type: boolean
clusterIP:
description: clusterIP is the IP address of the service
and is usually assigned randomly.
type: string
clusterIPs:
description: ClusterIPs is a list of IP addresses assigned
to this service, and are usually assigned randomly.
items:
type: string
type: array
x-kubernetes-list-type: atomic
externalIPs:
description: externalIPs is a list of IP addresses for
which nodes in the cluster will also accept traffic
for th
items:
type: string
type: array
externalName:
description: externalName is the external reference that
discovery mechanisms will return as an alias for this
se
type: string
externalTrafficPolicy:
description: externalTrafficPolicy denotes if this Service
desires to route external traffic to node-local or clu
type: string
healthCheckNodePort:
description: healthCheckNodePort specifies the healthcheck
nodePort for the service.
format: int32
type: integer
internalTrafficPolicy:
description: InternalTrafficPolicy specifies if the cluster
internal traffic should be routed to all endpoints or
type: string
ipFamilies:
description: IPFamilies is a list of IP families (e.g.
IPv4, IPv6) assigned to this service.
items:
description: IPFamily represents the IP Family (IPv4
or IPv6).
type: string
type: array
x-kubernetes-list-type: atomic
ipFamilyPolicy:
description: IPFamilyPolicy represents the dual-stack-ness
requested or required by this Service.
type: string
loadBalancerClass:
description: loadBalancerClass is the class of the load
balancer implementation this Service belongs to.
type: string
loadBalancerIP:
description: 'Only applies to Service Type: LoadBalancer
LoadBalancer will get created with the IP specified
in th'
type: string
loadBalancerSourceRanges:
description: If specified and supported by the platform,
this will restrict traffic through the cloud-provider
lo
items:
type: string
type: array
ports:
description: 'The list of ports that are exposed by this
service. More info: https://kubernetes.'
items:
description: ServicePort contains information on service's
port.
properties:
appProtocol:
description: The application protocol for this port.
This field follows standard Kubernetes label syntax.
type: string
name:
description: The name of this port within the service.
This must be a DNS_LABEL.
type: string
nodePort:
description: The port on each node on which this
service is exposed when type is NodePort or LoadBalancer.
format: int32
type: integer
port:
description: The port that will be exposed by this
service.
format: int32
type: integer
protocol:
default: TCP
description: The IP protocol for this port. Supports
"TCP", "UDP", and "SCTP". Default is TCP.
type: string
targetPort:
anyOf:
- type: integer
- type: string
description: Number or name of the port to access
on the pods targeted by the service.
x-kubernetes-int-or-string: true
required:
- port
type: object
type: array
x-kubernetes-list-map-keys:
- port
- protocol
x-kubernetes-list-type: map
publishNotReadyAddresses:
description: publishNotReadyAddresses indicates that any
agent which deals with endpoints for this Service should
type: boolean
selector:
additionalProperties:
type: string
description: Route service traffic to pods with label
keys and values matching this selector.
type: object
x-kubernetes-map-type: atomic
sessionAffinity:
description: Supports "ClientIP" and "None". Used to maintain
session affinity.
type: string
sessionAffinityConfig:
description: sessionAffinityConfig contains the configurations
of session affinity.
properties:
clientIP:
description: clientIP contains the configurations
of Client IP based session affinity.
properties:
timeoutSeconds:
description: timeoutSeconds specifies the seconds
of ClientIP type session sticky time.
format: int32
type: integer
type: object
type: object
type:
description: type determines how the Service is exposed.
Defaults to ClusterIP.
type: string
type: object
rayStartParams:
additionalProperties:
type: string
Expand Down
Loading