To add to what Matyas said:

Validation in itself is a mandatory step for every spec change that is
submitted to guard against broken configs (things like negative parallelism
etc).

But validation can happen in 2 places. It can be done through the webhook,
which would result in upfront rejection of the spec on validation error.

Or it can happen during regular processing/reconciliation process in which
case errors are recorded in the status .

The webhook is nice way to get validation error’s immediately but as you
see it’s not necessary as validation would happen anyways .

Gyula

On Fri, 9 Dec 2022 at 09:21, Őrhidi Mátyás <matyas.orh...@gmail.com> wrote:

> Hi Otto,
>
> webhooks in general are optional components of the k8s operator pattern.
> Mostly used for validation, sometimes for changing custom resources and
> handling multiple versions, etc. It's an optional component in the Flink
> Kubernetes Operator too.
>
> Regards,
> Matyas
>
> On Fri, Dec 9, 2022 at 5:59 AM Andrew Otto <o...@wikimedia.org> wrote:
>
>> Hello!
>>
>> What is the Flink Kubernetes Webhook
>> <https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/concepts/architecture/#admission-control>
>> for?  I probably don't know just because I don't know k8s that well, but
>> reading code and other docs didn't particular enlighten me :)
>>
>> It looks like maybe its for doing some extra validation of k8s API
>> requests, and allows you to customize how those requests are validated and
>> processed if you have special requirements to do so.
>>
>> Since it can be so easily disabled
>> <https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-main/docs/try-flink-kubernetes-operator/quick-start/#deploying-the-operator>,
>> do we need to install it for production use?  FWIW, we will not be using
>> FlinkSessionJob, so perhaps we don't need it if we don't use that?
>>
>> Thanks!
>> -Andrew Otto
>>  Wikimedia Foundation
>>
>

Reply via email to