【Kubernetes知识点】CRD客户资源定义及Gateway
目录
1.什么是CRD,它对K8s有什么重要意义?
2.CRD 的典型应用场景有哪些,举例说明。
3.结合教材,解释CRD的完整创建和使用过程。
4.Gateway API有哪几个核心组件,分别有哪些作用
1.什么是CRD,它对K8s有什么重要意义?
CRD(Custom Resource Definition,自定义资源定义) 是一种扩展 Kubernetes API 的机制,允许用户定义和使用集群原生不自带的 “自定义资源(Custom Resource)”,从而将 Kubernetes 的资源管理能力扩展到其默认资源(如 Pod、Deployment )之外。
2.CRD 的典型应用场景有哪些,举例说明。
数据库与中间件管理(Operator 模式)
服务网格与网络规则定义
CI/CD 与 GitOps 流程管理
监控与告警规则配置
云资源与基础设施管理
应用配置与特性管理
3.结合教材,解释CRD的完整创建和使用过程。
定义 CRD:通过 YAML 声明自定义资源的结构和规则,注册到 Kubernetes。
使用 CR:像原生资源一样创建、查询、更新、删除自定义资源实例。
扩展功能(可选):通过自定义控制器实现基于 CR 的自动化逻辑,达成声明式运维。
4.Gateway API有哪几个核心组件,分别有哪些作用?
GatewayClass(网关类):定义网关的 “模板” 或 “类型”,是集群级资源,用于描述一组具有相同配置和行为的 Gateway 实例。它通常与具体的网络实现(如 Ingress Controller、服务网格组件)绑定,决定了网关的底层运行方式。
Gateway(网关):是 GatewayClass 的实例化对象,代表一个运行中的网关服务(如负载均衡器、Ingress 控制器实例),负责监听外部流量并将其路由到集群内部服务。它是命名空间级资源,可绑定到特定网络接口或 IP 地址。
路由资源(Route):路由资源是 Gateway API 的核心,用于定义流量从 Gateway 到后端服务的具体转发规则。根据协议不同,主要包括 HTTPRoute、TCPRoute、UDPRoute 等,其中最常用的是 HTTPRoute。