MultiCluster v1alpha1 API Reference
Packages:
flomesh.io/v1alpha1
Package v1alpha1 is the v1alpha1 version of the API.
AlgoBalancer
(string
alias)
(Appears on:ServiceExportSpec)
AlgoBalancer defines Balancer Algo
ClusterStatus
(Appears on:ServiceImportStatus)
ClusterStatus contains service configuration mapped to a specific source cluster
Field | Description |
---|---|
cluster string | cluster is the name of the exporting cluster. Must be a valid RFC-1123 DNS label. |
addresses []string | in-cluster service, it’s the cluster IPs otherwise, it’s the url of accessing that service in remote cluster for example, http(s)://[Ingress IP/domain name]:[port]/[path] |
Endpoint
(Appears on:ServicePort)
Endpoint imported service’s endpoints
Field | Description |
---|---|
target Target | |
clusterKey string |
GlobalTrafficPolicy
GlobalTrafficPolicy is the Schema for the GlobalTrafficPolicys API
Field | Description | ||||
---|---|---|---|---|---|
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the
metadata field. | ||||
spec GlobalTrafficPolicySpec |
| ||||
status GlobalTrafficPolicyStatus |
GlobalTrafficPolicySpec
(Appears on:GlobalTrafficPolicy)
GlobalTrafficPolicySpec defines the desired state of GlobalTrafficPolicy
Field | Description |
---|---|
lbType LoadBalancerType | Type of global load distribution |
targets []TrafficTarget | (Optional) |
GlobalTrafficPolicyStatus
(Appears on:GlobalTrafficPolicy)
GlobalTrafficPolicyStatus defines the observed state of GlobalTrafficPolicy
LoadBalancerType
(string
alias)
(Appears on:GlobalTrafficPolicySpec)
LoadBalancerType defines load balancer type
Value | Description |
---|---|
"ActiveActive" | ActiveActiveLbType defines AA load balance type |
"FailOver" | FailOverLbType defines FO load balance type |
"Locality" | LocalityLbType defines OL load balance type |
PathRewrite
(Appears on:ServiceExportSpec)
PathRewrite defines path rewrite rule.
Field | Description |
---|---|
from string | |
to string |
ServiceExport
ServiceExport is the Schema for the ServiceExports API
Field | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the
metadata field. | ||||||||||||
spec ServiceExportSpec |
| ||||||||||||
status ServiceExportStatus |
ServiceExportConditionType
(string
alias)
ServiceExportConditionType identifies a specific condition.
Value | Description |
---|---|
"Conflict" | ServiceExportConflict means that there is a conflict between two exports for the same Service. When “True”, the condition message should contain enough information to diagnose the conflict: field(s) under contention, which cluster won, and why. Users should not expect detailed per-cluster information in the conflict message. |
"Valid" | ServiceExportValid means that the service referenced by this service export has been recognized as valid by controller. This will be false if the service is found to be unexportable (ExternalName, not found). |
ServiceExportRule
(Appears on:ServiceExportSpec)
ServiceExportRule defines service export rule.
Field | Description |
---|---|
portNumber int32 | The port number of service |
path string | Path is matched against the path of an incoming request. Currently it can contain characters disallowed from the conventional “path” part of a URL as defined by RFC 3986. Paths must begin with a ‘/’ and must be present when using PathType with value “Exact” or “Prefix”. |
pathType Kubernetes networking/v1.PathType | PathType determines the interpretation of the Path matching. PathType can be one of the following values: * Exact: Matches the URL path exactly. * Prefix: Matches based on a URL path prefix split by ‘/’. Matching is done on a path element by element basis. A path element refers is the list of labels in the path split by the ‘/’ separator. A request is a match for path p if every p is an element-wise prefix of p of the request path. Note that if the last element of the path is a substring of the last element in request path, it is not a match (e.g. /foo/bar matches /foo/bar/baz, but does not match /foo/barbaz). |
ServiceExportSpec
(Appears on:ServiceExport)
ServiceExportSpec defines the desired state of ServiceExport
Field | Description |
---|---|
pathRewrite PathRewrite | (Optional) PathRewrite, it shares ONE rewrite rule for the same ServiceExport |
sessionSticky bool | (Optional) Indicates if session sticky is enabled |
loadBalancer AlgoBalancer | (Optional) The LoadBalancer Type applied to the Ingress Rules those created by the ServiceExport |
rules []ServiceExportRule | The paths for accessing the service via Ingress controller |
targetClusters []string | (Optional) If empty, service is exported to all managed clusters. If not empty, service is exported to specified clusters, must be in format [region]/[zone]/[group]/[cluster] |
serviceAccountName string | (Optional) The ServiceAccount associated with this service |
ServiceExportStatus
(Appears on:ServiceExport)
ServiceExportStatus defines the observed state of ServiceExport
Field | Description |
---|---|
conditions []Kubernetes meta/v1.Condition | (Optional) |
ServiceImport
ServiceImport is the Schema for the ServiceImports API
Field | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the
metadata field. | ||||||||||||
spec ServiceImportSpec |
| ||||||||||||
status ServiceImportStatus |
ServiceImportSpec
(Appears on:ServiceImport)
ServiceImportSpec describes an imported service and the information necessary to consume it.
Field | Description |
---|---|
ports []ServicePort | |
ips []string | (Optional) ip will be used as the VIP for this service when type is ClusterSetIP. |
type ServiceImportType | (Optional) type defines the type of this service. Must be ClusterSetIP or Headless. |
sessionAffinity Kubernetes core/v1.ServiceAffinity | (Optional) Supports “ClientIP” and “None”. Used to maintain session affinity. Enable client IP based session affinity. Must be ClientIP or None. Defaults to None. Ignored when type is Headless More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies |
sessionAffinityConfig Kubernetes core/v1.SessionAffinityConfig | (Optional) sessionAffinityConfig contains session affinity configuration. |
serviceAccountName string | (Optional) The ServiceAccount associated with this service |
ServiceImportStatus
(Appears on:ServiceImport)
ServiceImportStatus describes derived state of an imported service.
Field | Description |
---|---|
clusters []ClusterStatus | (Optional) clusters is the list of exporting clusters from which this service was derived. |
ServiceImportType
(string
alias)
(Appears on:ServiceImportSpec)
ServiceImportType designates the type of a ServiceImport
Value | Description |
---|---|
"ClusterSetIP" | ClusterSetIP are only accessible via the ClusterSet IP. |
"Headless" | Headless services allow backend pods to be addressed directly. |
ServicePort
(Appears on:ServiceImportSpec)
ServicePort represents the port on which the service is exposed
Field | Description |
---|---|
name string | (Optional) The name of this port within the service. This must be a DNS_LABEL. All ports within a ServiceSpec must have unique names. When considering the endpoints for a Service, this must match the ‘name’ field in the EndpointPort. Optional if only one ServicePort is defined on this service. |
protocol Kubernetes core/v1.Protocol | (Optional) The IP protocol for this port. Supports “TCP”, “UDP”, and “SCTP”. Default is TCP. |
appProtocol string | (Optional) The application protocol for this port. This field follows standard Kubernetes label syntax. Un-prefixed names are reserved for IANA standard service names (as per RFC-6335 and http://www.iana.org/assignments/service-names). Non-standard protocols should use prefixed names such as mycompany.com/my-custom-protocol. Field can be enabled with ServiceAppProtocol feature gate. |
port int32 | The port that will be exposed by this service. |
endpoints []Endpoint | The address of accessing the service |
Target
(Appears on:Endpoint)
Target imported service’s endpoint target.
Field | Description |
---|---|
host string | |
ip string | |
port int32 | |
path string |
TrafficTarget
(Appears on:GlobalTrafficPolicySpec)
TrafficTarget defines the load balancer traffic target
Field | Description |
---|---|
clusterKey string | Format: [region]/[zone]/[group]/[cluster] |
weight int | (Optional) |
Generated with gen-crd-api-reference-docs
on git commit 763d323
.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.