FlowSchema [page]deterministic
FlowSchema defines the schema of a group of flows. Note that a flow is made up of a set of inbound API requests with similar attributes and is identified by a pair of strings: the name of the FlowSchema and a "flow distinguisher".
`apiVersion: flowcontrol.apiserver.k8s.io/v1`
`import "k8s.io/api/flowcontrol/v1"`
## FlowSchema {#FlowSchema}
FlowSchema defines the schema of a group of flows. Note that a flow is made up of a set of inbound API requests with similar attributes and is identified by a pair of strings: the name of the FlowSchema and a "flow distinguisher".
<hr>
<table> <thead><tr><th>Field</th><th>Description</th></tr></thead> <tbody> <tr> <td><code>apiVersion</code><br/><em>string</em></td> <td>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</td> </tr> <tr> <td><code>kind</code><br/><em>string</em></td> <td>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</td> </tr> <tr> <td><code>metadata</code><br/><em><a href="">ObjectMeta</a></em></td> <td>`metadata` is the standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td> </tr> <tr> <td><code>spec</code><br/><em><a href="">FlowSchemaSpec</a></em></td> <td>`spec` is the specification of the desired behavior of a FlowSchema. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td> </tr> <tr> <td><code>status</code><br/><em><a href="">FlowSchemaStatus</a></em></td> <td>`status` is the current status of a FlowSchema. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</td> </tr> </tbody> </table>
## FlowSchemaSpec {#FlowSchemaSpec}
FlowSchemaSpec describes how the FlowSchema's specification looks like.
<hr>
<table> <thead><tr><th>Field</th><th>Description</th></tr></thead> <tbody> <tr> <td><code>distinguisherMethod</code><br/><em><a href="">FlowDistinguisherMethod</a></em></td> <td>`distinguisherMethod` defines how to compute the flow distinguisher for requests that match this schema. `nil` specifies that the distinguisher is disabled and thus will always be the empty string.</td> </tr> <tr> <td><code>matchingPrecedence</code><br/><em>integer</em></td> <td>`matchingPrecedence` is used to choose among the FlowSchemas that match a given request. The chosen FlowSchema is among those with the numerically lowest (which we take to be logically highest) MatchingPrecedence. Each MatchingPrecedence value must be ranged in [1,10000]. Note that if the precedence is not specified, it will be set to 1000 as default.</td> </tr> <tr> <td><code>priorityLevelConfiguration</code> <strong>*</strong><br/><em><a href="">PriorityLevelConfigurationReference</a></em></td> <td>`priorityLevelConfiguration` should reference a PriorityLevelConfiguration in the cluster. If the reference cannot be resolved, the FlowSchema will be ignored and marked as invalid in its status. Required.</td> </tr> <tr> <td><code>rules</code><br/><em><a href="">PolicyRulesWithSubjects array</a></em></td> <td>`rules` describes which requests will match this flow schema. This FlowSchema matches a request if and only if at least one member of rules matches the request. if it is an empty slice, there will be no requests matching the FlowSchema.</td> </tr> </tbody> </table>
## FlowSchemaStatus {#FlowSchemaStatus}
FlowSchemaStatus represents the current state of a FlowSchema.
<hr>
<table> <thead><tr><th>Field</th><th>Description</th></tr></thead> <tbody> <t …(trimmed)