《Kubernetes设计与实现》内置准入控制器插件--MutatingAdmissionWebhook

与世无争的帅哥 提交于 2021-01-23 19:59:01

MutatingAdmissionWebhook是一款系统内置且默认启用的准入控制器插件,它在kube-apiserver审查请求(Mutating admission)阶段被调用,用于审查请求。

与其他准备控制器插件不同的是,MutatingAdmissionWebhook本身并不直接审查请求,而是将任务转发给相应的webhook(多个webhook串行调用),如果任何一个webhook返回失败,MutatingAdmissionWebhook将会立即拒绝请求。MutatingAdmissionWebhookwebhook的关系如下图所示:

webhook通常是一个专门负责审查资源对象的web服务,webhook根据是否会修改请求分为Mutating(修改型)和Validating(校验型)两类。MutatingAdmissionWebhook负责管理并调用Mutating类型的webhook,该类型webhook通过MutatingWebhookConfiguration对象注册到系统中,MutatingWebhookConfiguration对象中描述了webhook的服务地址、关心的资源对象类型等信息。MutatingAdmissionWebhook正是根据MutatingWebhookConfiguration对象来获取webhook列表,并在API 请求来到时筛选并调用webhook。关于MutatingWebhookConfiguration对象的更多信息将在后续章节展开介绍。

MutatingAdmissionWebhookKubernetes一个重要扩展机制,常用于对扩展的CRD(CustomResourceDefination)对象进行审查和改写,当然它也可以用于Kubernetes原生资源对象,比如当Pod创建时自动添加label

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!