Config v1alpha2 API Reference
Packages:
config.flomesh.io/v1alpha2
Package v1alpha2 is the v1alpha2 version of the API.
CertManagerProviderSpec
(Appears on:ProviderSpec)
CertManagerProviderSpec defines the configuration of the cert-manager provider
| Field | Description |
|---|---|
issuerNamestring | IssuerName specifies the name of the Issuer resource |
issuerKindstring | IssuerKind specifies the kind of Issuer |
issuerGroupstring | IssuerGroup specifies the group the Issuer belongs to |
CertificateSpec
(Appears on:MeshConfigSpec)
CertificateSpec is the type to reperesent FSM’s certificate management configuration.
| Field | Description |
|---|---|
serviceCertValidityDurationstring | ServiceCertValidityDuration defines the service certificate validity duration. |
certKeyBitSizeint | CertKeyBitSize defines the certicate key bit size. |
ingressGatewayIngressGatewayCertSpec | (Optional) IngressGateway defines the certificate specification for an ingress gateway. |
ClusterPropertySpec
(Appears on:ClusterSetSpec)
ClusterPropertySpec is the type to represent cluster property.
| Field | Description |
|---|---|
namestring | Name defines the name of cluster property. |
valuestring | Value defines the name of cluster property. |
ClusterSetSpec
(Appears on:MeshConfigSpec)
ClusterSetSpec is the type to represent cluster set.
| Field | Description |
|---|---|
properties[]ClusterPropertySpec | Properties defines properties for cluster. |
ExternalAuthzSpec
(Appears on:TrafficSpec)
ExternalAuthzSpec is a type to represent external authorization configuration.
| Field | Description |
|---|---|
enablebool | Enable defines a boolean indicating if the external authorization policy is to be enabled. |
addressstring | Address defines the remote address of the external authorization endpoint. |
portuint16 | Port defines the destination port of the remote external authorization endpoint. |
statPrefixstring | StatPrefix defines a prefix for the stats sink for this external authorization policy. |
timeoutstring | Timeout defines the timeout in which a response from the external authorization endpoint. is expected to execute. |
failureModeAllowbool | FailureModeAllow defines a boolean indicating if traffic should be allowed on a failure to get a response against the external authorization endpoint. |
FeatureFlags
(Appears on:MeshConfigSpec)
FeatureFlags is a type to represent FSM’s feature flags.
| Field | Description |
|---|---|
enableEgressPolicybool | EnableEgressPolicy defines if FSM’s Egress policy is enabled. |
enableSnapshotCacheModebool | EnableSnapshotCacheMode defines if XDS server starts with snapshot cache. |
enableAsyncProxyServiceMappingbool | EnableAsyncProxyServiceMapping defines if FSM will map proxies to services asynchronously. |
enableIngressBackendPolicybool | EnableIngressBackendPolicy defines if FSM will use the IngressBackend API to allow ingress traffic to service mesh backends. |
enableAccessControlPolicybool | EnableAccessControlPolicy defines if FSM will use the AccessControl API to allow access control traffic to service mesh backends. |
enableAccessCertPolicybool | EnableAccessCertPolicy defines if FSM can issue certificates for external services.. |
enableSidecarActiveHealthChecksbool | EnableSidecarActiveHealthChecks defines if FSM will Sidecar active health checks between services allowed to communicate. |
enableRetryPolicybool | EnableRetryPolicy defines if retry policy is enabled. |
enablePluginPolicybool | EnablePluginPolicy defines if plugin policy is enabled. |
enableAutoDefaultRoutebool | EnableAutoDefaultRoute defines if auto default route is enabled. |
IngressGatewayCertSpec
(Appears on:CertificateSpec)
IngressGatewayCertSpec is the type to represent the certificate specification for an ingress gateway.
| Field | Description |
|---|---|
subjectAltNames[]string | SubjectAltNames defines the Subject Alternative Names (domain names and IP addresses) secured by the certificate. |
validityDurationstring | ValidityDuration defines the validity duration of the certificate. |
secretKubernetes core/v1.SecretReference | Secret defines the secret in which the certificate is stored. |
LocalDNSProxy
(Appears on:SidecarSpec)
LocalDNSProxy is the type to represent FSM’s local DNS proxy configuration.
| Field | Description |
|---|---|
enablebool | Enable defines a boolean indicating if the sidecars are enabled for local DNS Proxy. |
primaryUpstreamDNSServerIPAddrstring | PrimaryUpstreamDNSServerIPAddr defines a primary upstream DNS server for local DNS Proxy. |
secondaryUpstreamDNSServerIPAddrstring | SecondaryUpstreamDNSServerIPAddr defines a secondary upstream DNS server for local DNS Proxy. |
LocalProxyMode
(string alias)
(Appears on:SidecarSpec)
LocalProxyMode is a type alias representing the way the sidecar proxies to the main application
| Value | Description |
|---|---|
"Localhost" | LocalProxyModeLocalhost indicates the the sidecar should communicate with the main application over localhost |
"PodIP" | LocalProxyModePodIP indicates that the sidecar should communicate with the main application via the pod ip |
MeshConfig
MeshConfig is the type used to represent the mesh configuration.
| Field | Description | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
metadataKubernetes meta/v1.ObjectMeta | (Optional) Object’s metadata. Refer to the Kubernetes API documentation for the fields of themetadata field. | ||||||||||||||||
specMeshConfigSpec | (Optional) Spec is the MeshConfig specification.
|
MeshConfigSpec
(Appears on:MeshConfig)
MeshConfigSpec is the spec for FSM’s configuration.
| Field | Description |
|---|---|
clusterSetClusterSetSpec | ClusterSetSpec defines the configurations of cluster. |
sidecarSidecarSpec | Sidecar defines the configurations of the proxy sidecar in a mesh. |
repoServerRepoServerSpec | RepoServer defines the configurations of pipy repo server. |
trafficTrafficSpec | Traffic defines the traffic management configurations for a mesh instance. |
observabilityObservabilitySpec | Observalility defines the observability configurations for a mesh instance. |
certificateCertificateSpec | Certificate defines the certificate management configurations for a mesh instance. |
featureFlagsFeatureFlags | FeatureFlags defines the feature flags for a mesh instance. |
pluginChainsPluginChainsSpec | PluginChains defines the default plugin chains. |
MeshRootCertificate
MeshRootCertificate defines the configuration for certificate issuing by the mesh control plane
| Field | Description | ||||
|---|---|---|---|---|---|
metadataKubernetes meta/v1.ObjectMeta | (Optional) Object’s metadata Refer to the Kubernetes API documentation for the fields of themetadata field. | ||||
specMeshRootCertificateSpec | (Optional) Spec is the MeshRootCertificate config specification
| ||||
statusMeshRootCertificateStatus | (Optional) Status of the MeshRootCertificate resource |
MeshRootCertificateSpec
(Appears on:MeshRootCertificate)
MeshRootCertificateSpec defines the mesh root certificate specification
| Field | Description |
|---|---|
providerProviderSpec | Provider specifies the mesh certificate provider |
trustDomainstring | TrustDomain is the trust domain to use as a suffix in Common Names for new certificates. |
MeshRootCertificateStatus
(Appears on:MeshRootCertificate)
MeshRootCertificateStatus defines the status of the MeshRootCertificate resource
| Field | Description |
|---|---|
statestring | State specifies the state of the certificate provider All states are specified in constants.go |
ObservabilitySpec
(Appears on:MeshConfigSpec)
ObservabilitySpec is the type to represent FSM’s observability configurations.
| Field | Description |
|---|---|
fsmLogLevelstring | FSMLogLevel defines the log level for FSM control plane logs. |
enableDebugServerbool | EnableDebugServer defines if the debug endpoint on the FSM controller pod is enabled. |
tracingTracingSpec | Tracing defines FSM’s tracing configuration. |
remoteLoggingRemoteLoggingSpec | RemoteLogging defines FSM’s remote logging configuration. |
PluginChainSpec
(Appears on:PluginChainsSpec)
PluginChainSpec is the type to represent plugin chain.
| Field | Description |
|---|---|
pluginstring | Plugin defines the name of plugin |
priorityfloat32 | Priority defines the priority of plugin |
disablebool | Disable defines the visibility of plugin |
PluginChainsSpec
(Appears on:MeshConfigSpec)
PluginChainsSpec is the type to represent plugin chains.
| Field | Description |
|---|---|
inbound-tcp[]PluginChainSpec | InboundTCPChains defines inbound tcp chains |
inbound-http[]PluginChainSpec | InboundHTTPChains defines inbound http chains |
outbound-tcp[]PluginChainSpec | OutboundTCPChains defines outbound tcp chains |
outbound-http[]PluginChainSpec | OutboundHTTPChains defines outbound http chains |
ProviderSpec
(Appears on:MeshRootCertificateSpec)
ProviderSpec defines the certificate provider used by the mesh control plane
| Field | Description |
|---|---|
certManagerCertManagerProviderSpec | (Optional) CertManager specifies the cert-manager provider configuration |
vaultVaultProviderSpec | (Optional) Vault specifies the vault provider configuration |
tresorTresorProviderSpec | (Optional) Tresor specifies the Tresor provider configuration |
RemoteLoggingSpec
(Appears on:ObservabilitySpec)
RemoteLoggingSpec is the type to represent FSM’s remote logging configuration.
| Field | Description |
|---|---|
enablebool | Enable defines a boolean indicating if the sidecars are enabled for remote logging. |
leveluint16 | Level defines the remote logging’s level. |
portint16 | Port defines the remote logging’s port. |
addressstring | Address defines the remote logging’s hostname. |
endpointstring | Endpoint defines the API endpoint for remote logging requests sent to the collector. |
authorizationstring | Authorization defines the access entity that allows to authorize someone in remote logging service. |
sampledFractionstring | SampledFraction defines the sampled fraction. |
RepoServerSpec
(Appears on:MeshConfigSpec)
RepoServerSpec is the type to represent repo server.
| Field | Description |
|---|---|
ipaddrstring | IPAddr of the pipy repo server |
codebasestring | Codebase is the folder used by fsmController |
SecretKeyReferenceSpec
(Appears on:VaultTokenSpec)
SecretKeyReferenceSpec defines the configuration of the secret reference
| Field | Description |
|---|---|
namestring | Name specifies the name of the secret in which the Vault token is stored |
keystring | Key specifies the key whose value is the Vault token |
namespacestring | Namespace specifies the namespace of the secret in which the Vault token is stored |
SidecarDriverSpec
(Appears on:SidecarSpec)
SidecarDriverSpec is the type to represent FSM’s sidecar driver define.
| Field | Description |
|---|---|
sidecarNamestring | SidecarName defines the name of the sidecar driver. |
sidecarImagestring | SidecarImage defines the container image used for the proxy sidecar. |
initContainerImagestring | InitContainerImage defines the container image used for the init container injected to meshed pods. |
proxyServerPortuint32 | ProxyServerPort is the port on which the Discovery Service listens for new connections from Sidecars |
sidecarDisabledMTLSbool | SidecarDisabledMTLS defines whether mTLS is disabled. |
SidecarSpec
(Appears on:MeshConfigSpec)
SidecarSpec is the type used to represent the specifications for the proxy sidecar.
| Field | Description |
|---|---|
enablePrivilegedInitContainerbool | EnablePrivilegedInitContainer defines a boolean indicating whether the init container for a meshed pod should run as privileged. |
logLevelstring | LogLevel defines the logging level for the sidecar’s logs. Non developers should generally never set this value. In production environments the LogLevel should be set to error. |
sidecarClassstring | SidecarClass defines the class used for the proxy sidecar. |
sidecarImagestring | SidecarImage defines the container image used for the proxy sidecar. |
sidecarDisabledMTLSbool | SidecarDisabledMTLS defines whether mTLS is disabled. |
initContainerImagestring | InitContainerImage defines the container image used for the init container injected to meshed pods. |
sidecarDrivers[]SidecarDriverSpec | SidecarDrivers defines the sidecar supported. |
maxDataPlaneConnectionsint | MaxDataPlaneConnections defines the maximum allowed data plane connections from a proxy sidecar to the FSM controller. |
configResyncIntervalstring | ConfigResyncInterval defines the resync interval for regular proxy broadcast updates. |
sidecarTimeoutint | SidecarTimeout defines the connect/idle/read/write timeout. |
resourcesKubernetes core/v1.ResourceRequirements | Resources defines the compute resources for the sidecar. |
tlsMinProtocolVersionstring | TLSMinProtocolVersion defines the minimum TLS protocol version that the sidecar supports. Valid TLS protocol versions are TLS_AUTO, TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. |
tlsMaxProtocolVersionstring | TLSMaxProtocolVersion defines the maximum TLS protocol version that the sidecar supports. Valid TLS protocol versions are TLS_AUTO, TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. |
cipherSuites[]string | CipherSuites defines a list of ciphers that listener supports when negotiating TLS 1.0-1.2. This setting has no effect when negotiating TLS 1.3. For valid cipher names, see the latest OpenSSL ciphers manual page. E.g. https://www.openssl.org/docs/man1.1.1/apps/ciphers.html. |
ecdhCurves[]string | ECDHCurves defines a list of ECDH curves that TLS connection supports. If not specified, the curves are [X25519, P-256] for non-FIPS build and P-256 for builds using BoringSSL FIPS. |
localProxyModeLocalProxyMode | LocalProxyMode defines the network interface the proxy will use to send traffic to the backend service application. Acceptable values are [ |
localDNSProxyLocalDNSProxy | LocalDNSProxy improves the performance of your computer by caching the responses coming from your DNS servers |
TracingSpec
(Appears on:ObservabilitySpec)
TracingSpec is the type to represent FSM’s tracing configuration.
| Field | Description |
|---|---|
enablebool | Enable defines a boolean indicating if the sidecars are enabled for tracing. |
portint16 | Port defines the tracing collector’s port. |
addressstring | Address defines the tracing collectio’s hostname. |
endpointstring | Endpoint defines the API endpoint for tracing requests sent to the collector. |
sampledFractionstring | SampledFraction defines the sampled fraction. |
TrafficSpec
(Appears on:MeshConfigSpec)
TrafficSpec is the type used to represent FSM’s traffic management configuration.
| Field | Description |
|---|---|
interceptionModestring | InterceptionMode defines a string indicating which traffic interception mode is used. |
enableEgressbool | EnableEgress defines a boolean indicating if mesh-wide Egress is enabled. |
outboundIPRangeExclusionList[]string | OutboundIPRangeExclusionList defines a global list of IP address ranges to exclude from outbound traffic interception by the sidecar proxy. |
outboundIPRangeInclusionList[]string | OutboundIPRangeInclusionList defines a global list of IP address ranges to include for outbound traffic interception by the sidecar proxy. IP addresses outside this range will be excluded from outbound traffic interception by the sidecar proxy. |
outboundPortExclusionList[]int | OutboundPortExclusionList defines a global list of ports to exclude from outbound traffic interception by the sidecar proxy. |
inboundPortExclusionList[]int | InboundPortExclusionList defines a global list of ports to exclude from inbound traffic interception by the sidecar proxy. |
enablePermissiveTrafficPolicyModebool | EnablePermissiveTrafficPolicyMode defines a boolean indicating if permissive traffic policy mode is enabled mesh-wide. |
serviceAccessModestring | ServiceAccessMode defines a string indicating service access mode. |
inboundExternalAuthorizationExternalAuthzSpec | InboundExternalAuthorization defines a ruleset that, if enabled, will configure a remote external authorization endpoint for all inbound and ingress traffic in the mesh. |
networkInterfaceExclusionList[]string | NetworkInterfaceExclusionList defines a global list of network interface names to exclude from inbound and outbound traffic interception by the sidecar proxy. |
http1PerRequestLoadBalancingbool | HTTP1PerRequestLoadBalancing defines a boolean indicating if load balancing based on request is enabled for http1. |
http2PerRequestLoadBalancingbool | HTTP1PerRequestLoadBalancing defines a boolean indicating if load balancing based on request is enabled for http2. |
TresorCASpec
(Appears on:TresorProviderSpec)
TresorCASpec defines the configuration of Tresor’s root certificate
| Field | Description |
|---|---|
secretRefKubernetes core/v1.SecretReference | SecretRef specifies the secret in which the root certificate is stored |
TresorProviderSpec
(Appears on:ProviderSpec)
TresorProviderSpec defines the configuration of the Tresor provider
| Field | Description |
|---|---|
caTresorCASpec | CA specifies Tresor’s ca configuration |
VaultProviderSpec
(Appears on:ProviderSpec)
VaultProviderSpec defines the configuration of the Vault provider
| Field | Description |
|---|---|
hoststring | Host specifies the name of the Vault server |
portint | Port specifies the port of the Vault server |
rolestring | Role specifies the name of the role for use by mesh control plane |
protocolstring | Protocol specifies the protocol for connections to Vault |
tokenVaultTokenSpec | Token specifies the configuration of the token to be used by mesh control plane to connect to Vault |
VaultTokenSpec
(Appears on:VaultProviderSpec)
VaultTokenSpec defines the configuration of the Vault token
| Field | Description |
|---|---|
secretKeyRefSecretKeyReferenceSpec | SecretKeyRef specifies the secret in which the Vault token is stored |
Generated with gen-crd-api-reference-docs
on git commit 8abe9ab.
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.