ExternalGateway Custom Resource ​
The externalgateways.gateway.kyma-project.io CustomResourceDefinition (CRD) describes the kind and the format of data used to configure an ExternalGateway custom resource (CR). To get the up-to-date CRD in the yaml format, run the following command:
kubectl get crd externalgateways.gateway.kyma-project.io -o yamlSample Custom Resource ​
This is a sample ExternalGateway CR:
apiVersion: gateway.kyma-project.io/v1alpha1
kind: ExternalGateway
metadata:
name: my-app
namespace: my-namespace
spec:
externalDomain: api.customer.com
internalDomain:
kymaSubdomain: external-myapp
region: eu10
regionsConfigMap: external-gateway-regions
caSecretRef:
name: ca-certificateCustom Resource Parameters ​
The following tables list all the possible parameters of a given resource together with their descriptions.
APIVersions ​
- gateway.kyma-project.io/v1alpha1
Resource Types ​
ExternalGateway ​
ExternalGateway defines the Schema for the ExternalGateway API.
| Field | Description | Validation |
|---|---|---|
| apiVersion string | gateway.kyma-project.io/v1alpha1 | Optional |
| kind string | ExternalGateway | Optional |
| metadata ObjectMeta | For more information on the metadata fields, see Kubernetes API documentation. | Optional |
| spec ExternalGatewaySpec | ExternalGatewaySpec defines the desired state of ExternalGateway. | Optional |
| status ExternalGatewayStatus | ExternalGatewayStatus defines the observed state of an ExternalGateway. | Optional |
ExternalGatewaySpec ​
ExternalGatewaySpec defines the desired state of ExternalGateway.
Appears in:
| Field | Description | Validation |
|---|---|---|
| externalDomain string | ExternalDomain is the customer-facing domain, for example, api.customer.com or *.api.customer.com.It uses the Istio Gateway host format and can include an optional wildcard prefix, for example, *.example.com. | MaxLength: 255 Pattern: ^(\*\.)?([a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?\.)*[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ Required |
| internalDomain InternalDomainConfig | InternalDomain defines the domain configuration for Kyma-internal access. | Required |
| region string | Region contains a region identifier, for example, eu10 or us10.It must match a region defined in the RegionsConfigMap. | Required |
| regionsConfigMap string | RegionsConfigMap specifies the name of the ConfigMap that contains region metadata. The ConfigMap must be in the same namespace as the ExternalGateway. If no key is specified in the ConfigMap, it auto-detects a single key or looks for regions.yaml. | MaxLength: 253 MinLength: 1 Pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ Required |
| caSecretRef SecretReference | CASecretRef references the Secret containing the CA certificate. This CA is used to validate client certificates during the mTLS handshake. If the namespace is not specified, it defaults to the ExternalGateway's namespace. If the Secret key is not specified in the Secret, it auto-detects a single key or looks for ca.crt. | Required |
| includeExtGatewayClientCert boolean | IncludeExtGatewayClientCert controls whether the ExternalGateway client certificate is included in HTTP headers. By default, this option is disabled, so the client certificate is not included. | Optional |
ExternalGatewayStatus ​
ExternalGatewayStatus defines the observed state of an ExternalGateway.
Appears in:
| Field | Description | Validation |
|---|---|---|
| lastProcessedTime Time | LastProcessedTime represents the last time the ExternalGateway status was processed. | Optional |
| state State | State defines the reconciliation state of the ExternalGateway. | Enum: [Processing Ready Error] |
| description string | Description provides details about the ExternalGateway status. | Optional |
InternalDomainConfig ​
InternalDomainConfig defines the configuration for the Kyma-internal domain.
Appears in:
| Field | Description | Validation |
|---|---|---|
| kymaSubdomain string | KymaSubdomain specifies the subdomain prefix, for example, external-myapp.The full internal domain follows the pattern {kymaSubdomain}.{KYMA_DOMAIN}. | MaxLength: 63 Pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$ |
State ​
State defines the reconciliation state of the ExternalGateway.
Underlying type: string
Appears in:
| Field | Description |
|---|---|
| Processing | Processing indicates that the ExternalGateway is being created or updated. |
| Ready | Ready indicates that reconciliation of the ExternalGateway has finished. |
| Error | Error indicates that an error occurred during reconciliation. |