TIS0304 - Gateway Server Credentials Not Found
The gateway server credentials were not found.
To prevent TLS configuration failures, ensure that the gateway server credentials (credentialName
) are properly created as secrets in the namespace and accessible by the Gateway
resource.
Examples
-
Gateway
with Missing TLS CredentialsapiVersion: networking.istio.io/v1beta1
kind: Gateway
metadata:
name: missing-credentials-gateway
namespace: example-namespace
spec:
selector:
istio: ingressgateway
servers:
- port:
number: 443
name: https
protocol: HTTPS
hosts:
- "example.com"
tls:
mode: SIMPLE
credentialName: missing-certExplanation: The
Gateway
is configured to use a TLS certificate identified bycredentialName: missing-cert
, but the credentials were not found in the secret store. This means the gateway cannot serve HTTPS traffic for the specified host, leading to potential SSL/TLS handshake failures.
Recommendation
Ensure the specified credentials are correctly created and accessible in the namespace.
-
Create the Missing TLS Secret
Create the TLS secret with the required credentials in the appropriate namespace.
kubectl create secret tls missing-cert \
--cert=path/to/tls.crt \
--key=path/to/tls.key \
-n example-namespace -
Verify the Credential Name
Ensure the credential name specified in the
Gateway
matches the name of an existing secret in the same namespace.apiVersion: networking.istio.io/v1beta1
kind: Gateway
metadata:
name: valid-credentials-gateway
namespace: example-namespace
spec:
selector:
istio: ingressgateway
servers:
- port:
number: 443
name: https
protocol: HTTPS
hosts:
- "example.com"
tls:
mode: SIMPLE
credentialName: valid-cert