Description
GatewayDeploy is the Schema for the gatewaydeploys API
Type
object

Specification

PropertyTypeDescription
apiVersionstring

APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kindstring

Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadataObjectMeta

ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.

specobject

GatewayDeploySpec defines the desired state of GatewayDeploy

statusobject

GatewayDeployStatus defines the observed state of GatewayDeploy

.spec

Description
GatewayDeploySpec defines the desired state of GatewayDeploy
Type
object
Required
globalk8srevisiontype
PropertyTypeDescription
accessLoggingobject

Access-log configuration.

globalobject

Global configuration.

k8sobject

Kubernetes configuration.

revisionstring

Gateway Revision。

typestring

Type of gateway.

.spec.accessLogging

Description
Access-log configuration.
Type
object
Required
enabled
PropertyTypeDescription
enabledboolean

.spec.global

Description
Global configuration.
Type
object
Required
podStrategy
PropertyTypeDescription
autoscaleEnabledboolean

Whether auto-scaling is enabled.

externalLoadBalancerIPAddressstring

External Load Balancer IP address

podStrategystring

Anti-affinity strategy.

privateboolean

Visibility to other projects

.spec.k8s

Description
Kubernetes configuration.
Type
object
PropertyTypeDescription
hpaSpecobject

HPA configuration.

nodeSelectorobject

Node Selector, key of the map is node's label key, value of the map is a type of []string that means In operation will be used for node selection.

nodesarray

Deploy Nodes.

podAnnotationsobject

Pod's annotations.

replicasinteger

Replicas.

resourcesobject

Resource limits.

serviceobject

Port details.

tolerationsarray

Taint tolerance.

.spec.k8s.hpaSpec

Description
HPA configuration.
Type
object
PropertyTypeDescription
maxReplicasinteger

Maximum number of replicas.

minReplicasinteger

Minimum number of replicas.

.spec.k8s.nodeSelector

Description
Node Selector, key of the map is node's label key, value of the map is a type of []string that means `In` operation will be used for node selection.
Type
object

.spec.k8s.nodes

Description
Deploy Nodes.
Type
array

.spec.k8s.nodes[]

Type
string

.spec.k8s.podAnnotations

Description
Pod's annotations.
Type
object

.spec.k8s.resources

Description
Resource limits.
Type
object
PropertyTypeDescription
limitsobject

Maximum resource limits.

requestsobject

Minimum resource requirements.

.spec.k8s.resources.limits

Description
Maximum resource limits.
Type
object
PropertyTypeDescription
cpustring

CPU.

memorystring

Memory.

.spec.k8s.resources.requests

Description
Minimum resource requirements.
Type
object
PropertyTypeDescription
cpustring

CPU.

memorystring

Memory.

.spec.k8s.service

Description
Port details.
Type
object
PropertyTypeDescription
annotationsobject

Service's annotations.

portsobject

Port details.

typestring

Type of service.

.spec.k8s.service.annotations

Description
Service's annotations.
Type
object

.spec.k8s.service.ports

Description
Port details.
Type
object
PropertyTypeDescription
httpobject

HTTP port.

http-httpsobject

http/https port.

httpsobject

HTTPS port.

tcpobject

TCP port.

.spec.k8s.service.ports.http

Description
HTTP port.
Type
object
PropertyTypeDescription
countinteger

Number.

dataarray

Port list.

.spec.k8s.service.ports.http.data

Description
Port list.
Type
array

.spec.k8s.service.ports.http.data[]

Type
object
PropertyTypeDescription
itemsarray

Info of port.

namestring

Name.

.spec.k8s.service.ports.http.data[].items

Description
Info of port.
Type
array

.spec.k8s.service.ports.http.data[].items[]

Type
object
PropertyTypeDescription
externalLoadBalancerPortinteger

External Load Balancer Port

nodePortinteger

Node port.

portinteger

Service port.

protocolstring

Type of protocal.

targetPortinteger

Container port.

.spec.k8s.service.ports.http-https

Description
http/https port.
Type
object
PropertyTypeDescription
countinteger

Number.

dataarray

Port list.

.spec.k8s.service.ports.http-https.data

Description
Port list.
Type
array

.spec.k8s.service.ports.http-https.data[]

Type
object
PropertyTypeDescription
itemsarray

Info of port.

namestring

Name.

.spec.k8s.service.ports.http-https.data[].items

Description
Info of port.
Type
array

.spec.k8s.service.ports.http-https.data[].items[]

Type
object
PropertyTypeDescription
externalLoadBalancerPortinteger

External Load Balancer Port

nodePortinteger

Node port.

portinteger

Service port.

protocolstring

Type of protocal.

targetPortinteger

Container port.

.spec.k8s.service.ports.https

Description
HTTPS port.
Type
object
PropertyTypeDescription
countinteger

Number.

dataarray

Port list.

.spec.k8s.service.ports.https.data

Description
Port list.
Type
array

.spec.k8s.service.ports.https.data[]

Type
object
PropertyTypeDescription
itemsarray

Info of port.

namestring

Name.

.spec.k8s.service.ports.https.data[].items

Description
Info of port.
Type
array

.spec.k8s.service.ports.https.data[].items[]

Type
object
PropertyTypeDescription
externalLoadBalancerPortinteger

External Load Balancer Port

nodePortinteger

Node port.

portinteger

Service port.

protocolstring

Type of protocal.

targetPortinteger

Container port.

.spec.k8s.service.ports.tcp

Description
TCP port.
Type
object
PropertyTypeDescription
countinteger

Number.

dataarray

Port list.

.spec.k8s.service.ports.tcp.data

Description
Port list.
Type
array

.spec.k8s.service.ports.tcp.data[]

Type
object
PropertyTypeDescription
itemsarray

Info of port.

namestring

Name.

.spec.k8s.service.ports.tcp.data[].items

Description
Info of port.
Type
array

.spec.k8s.service.ports.tcp.data[].items[]

Type
object
PropertyTypeDescription
externalLoadBalancerPortinteger

External Load Balancer Port

nodePortinteger

Node port.

portinteger

Service port.

protocolstring

Type of protocal.

targetPortinteger

Container port.

.spec.k8s.tolerations

Description
Taint tolerance.
Type
array

.spec.k8s.tolerations[]

Type
object
PropertyTypeDescription
effectstring

Scheduling policy.

keystring

Key of taint.

operatorstring

Tolerant matching strategy.

valuestring

Value of taint.

.status

Description
GatewayDeployStatus defines the observed state of GatewayDeploy
Type
object
PropertyTypeDescription
availableReplicasinteger

Number of replicas available.

messagestring

A human readable message indicating details about why the gateway is in this phase.

phasestring

Status of the gateway workloads and service.

podsarray

Pod status.

proxyobject

Istio Proxy status

replicasinteger

Expected number of replicas.

serviceobject

Service status

.status.pods

Description
Pod status.
Type
array

.status.pods[]

Type
object
PropertyTypeDescription
hostIPstring

Node ip.

phasestring

Status of container.

podIPstring

Pod ip.

.status.proxy

Description
Istio Proxy status
Type
object
PropertyTypeDescription
conditionsarray
reasonstring
revisionobject
statestring

.status.proxy.conditions

Type
array

.status.proxy.conditions[]

Description
Condition contains details for one aspect of the current state of this API Resource. --- This struct is intended for direct use as an array at the field path .status.conditions. For example, type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"` // other fields }
Type
object
Required
lastTransitionTimemessagereasonstatustype
PropertyTypeDescription
lastTransitionTimestring

lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.

messagestring

message is a human readable message indicating details about the transition. This may be an empty string.

observedGenerationinteger

observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.

reasonstring

reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.

statusstring

status of the condition, one of True, False, Unknown.

typestring

type of condition in CamelCase or in foo.example.com/CamelCase. --- Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)

.status.proxy.revision

Type
object
Required
currenttarget
PropertyTypeDescription
currentstring
targetstring

.status.service

Description
Service status
Type
object
PropertyTypeDescription
loadBalancerobject

LoadBalancer status

portsarray

Ports status

.status.service.loadBalancer

Description
LoadBalancer status
Type
object
PropertyTypeDescription
ingressarray

Ingress is a list containing ingress points for the load-balancer. Traffic intended for the service should be sent to these ingress points.

.status.service.loadBalancer.ingress

Description
Ingress is a list containing ingress points for the load-balancer. Traffic intended for the service should be sent to these ingress points.
Type
array

.status.service.loadBalancer.ingress[]

Description
LoadBalancerIngress represents the status of a load-balancer ingress point: traffic intended for the service should be sent to an ingress point.
Type
object
PropertyTypeDescription
hostnamestring

Hostname is set for load-balancer ingress points that are DNS based (typically AWS load-balancers)

ipstring

IP is set for load-balancer ingress points that are IP based (typically GCE or OpenStack load-balancers)

portsarray

Ports is a list of records of service ports If used, every port defined in the service should have an entry in it

.status.service.loadBalancer.ingress[].ports

Description
Ports is a list of records of service ports If used, every port defined in the service should have an entry in it
Type
array

.status.service.loadBalancer.ingress[].ports[]

Type
object
Required
portprotocol
PropertyTypeDescription
errorstring

Error is to record the problem with the service port The format of the error shall comply with the following rules: - built-in error values shall be specified in this file and those shall use CamelCase names - cloud provider specific error values must have names that comply with the format foo.example.com/CamelCase. --- The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)

portinteger

Port is the port number of the service port of which status is recorded here

protocolstring

Protocol is the protocol of the service port of which status is recorded here The supported values are: "TCP", "UDP", "SCTP"

.status.service.ports

Description
Ports status
Type
array

.status.service.ports[]

Description
ServicePort contains information on service's port.
Type
object
Required
port
PropertyTypeDescription
appProtocolstring

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 https://www.iana.org/assignments/service-names). Non-standard protocols should use prefixed names such as mycompany.com/my-custom-protocol.

namestring

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.

nodePortinteger

The port on each node on which this service is exposed when type is NodePort or LoadBalancer. Usually assigned by the system. If a value is specified, in-range, and not in use it will be used, otherwise the operation will fail. If not specified, a port will be allocated if this Service requires one. If this field is specified when creating a Service which does not need it, creation will fail. This field will be wiped when updating a Service to no longer need it (e.g. changing type from NodePort to ClusterIP). More info: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport

portinteger

The port that will be exposed by this service.

protocolstring

The IP protocol for this port. Supports "TCP", "UDP", and "SCTP". Default is TCP.

targetPort

Number or name of the port to access on the pods targeted by the service. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. If this is a string, it will be looked up as a named port in the target Pod's container ports. If this is not specified, the value of the 'port' field is used (an identity map). This field is ignored for services with clusterIP=None, and should be omitted or set equal to the 'port' field. More info: https://kubernetes.io/docs/concepts/services-networking/service/#defining-a-service

API Endpoints

The following API endpoints are available:

  • /apis/asm.alauda.io/v1alpha1/namespaces/{namespace}/gatewaydeploys
    • DELETE: delete collection of GatewayDeploy
    • GET: list objects of kind GatewayDeploy
    • POST: create a new GatewayDeploy
  • /apis/asm.alauda.io/v1alpha1/namespaces/{namespace}/gatewaydeploys/{name}
    • DELETE: delete the specified GatewayDeploy
    • GET: read the specified GatewayDeploy
    • PATCH: partially update the specified GatewayDeploy
    • PUT: replace the specified GatewayDeploy
  • /apis/asm.alauda.io/v1alpha1/namespaces/{namespace}/gatewaydeploys/{name}/status
    • GET: read status of the specified GatewayDeploy
    • PATCH: partially update status of the specified GatewayDeploy
    • PUT: replace status of the specified GatewayDeploy

/apis/asm.alauda.io/v1alpha1/namespaces/{namespace}/gatewaydeploys

HTTP method
DELETE
Description
delete collection of GatewayDeploy
HTTP responses
HTTP codeResponse body
200 - OKStatus schema
401 - UnauthorizedEmpty
HTTP method
GET
Description
list objects of kind GatewayDeploy
HTTP responses
HTTP codeResponse body
200 - OKGatewayDeployList schema
401 - UnauthorizedEmpty
HTTP method
POST
Description
create a new GatewayDeploy
Query parameters
ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
fieldValidationstringfieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.
Body parameters
ParameterTypeDescription
bodyGatewayDeploy schemaapplication/json formatted
HTTP responses
HTTP codeResponse body
200 - OKGatewayDeploy schema
201 - CreatedGatewayDeploy schema
202 - AcceptedGatewayDeploy schema
401 - UnauthorizedEmpty

/apis/asm.alauda.io/v1alpha1/namespaces/{namespace}/gatewaydeploys/{name}

HTTP method
DELETE
Description
delete the specified GatewayDeploy
Query parameters
ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
HTTP responses
HTTP codeResponse body
200 - OKStatus schema
202 - AcceptedStatus schema
401 - UnauthorizedEmpty
HTTP method
GET
Description
read the specified GatewayDeploy
HTTP responses
HTTP codeResponse body
200 - OKGatewayDeploy schema
401 - UnauthorizedEmpty
HTTP method
PATCH
Description
partially update the specified GatewayDeploy
Query parameters
ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
fieldValidationstringfieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.
HTTP responses
HTTP codeResponse body
200 - OKGatewayDeploy schema
401 - UnauthorizedEmpty
HTTP method
PUT
Description
replace the specified GatewayDeploy
Query parameters
ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
fieldValidationstringfieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.
Body parameters
ParameterTypeDescription
bodyGatewayDeploy schemaapplication/json formatted
HTTP responses
HTTP codeResponse body
200 - OKGatewayDeploy schema
201 - CreatedGatewayDeploy schema
401 - UnauthorizedEmpty

/apis/asm.alauda.io/v1alpha1/namespaces/{namespace}/gatewaydeploys/{name}/status

HTTP method
GET
Description
read status of the specified GatewayDeploy
HTTP responses
HTTP codeResponse body
200 - OKGatewayDeploy schema
401 - UnauthorizedEmpty
HTTP method
PATCH
Description
partially update status of the specified GatewayDeploy
Query parameters
ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
fieldValidationstringfieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.
HTTP responses
HTTP codeResponse body
200 - OKGatewayDeploy schema
401 - UnauthorizedEmpty
HTTP method
PUT
Description
replace status of the specified GatewayDeploy
Query parameters
ParameterTypeDescription
dryRunstringWhen present, indicates that modifications should not be persisted. An invalid or unrecognized dryRun directive will result in an error response and no further processing of the request. Valid values are: - All: all dry run stages will be processed
fieldValidationstringfieldValidation instructs the server on how to handle objects in the request (POST/PUT/PATCH) containing unknown or duplicate fields. Valid values are: - Ignore: This will ignore any unknown fields that are silently dropped from the object, and will ignore all but the last duplicate field that the decoder encounters. This is the default behavior prior to v1.23. - Warn: This will send a warning via the standard warning response header for each unknown field that is dropped from the object, and for each duplicate field that is encountered. The request will still succeed if there are no other errors, and will only persist the last of any duplicate fields. This is the default in v1.23+ - Strict: This will fail the request with a BadRequest error if any unknown fields would be dropped from the object, or if any duplicate fields are present. The error returned from the server will contain all unknown and duplicate fields encountered.
Body parameters
ParameterTypeDescription
bodyGatewayDeploy schemaapplication/json formatted
HTTP responses
HTTP codeResponse body
200 - OKGatewayDeploy schema
201 - CreatedGatewayDeploy schema
401 - UnauthorizedEmpty