请问大家一般对自定义crd要etcd存储是否是用配置api-server –etcd-servers-overrides的形式?
本问题来自阿里云开发者社区的【11大垂直技术领域开发者社群】。https://developer.aliyun.com/article/706511 点击链接欢迎加入感兴趣的技术领域群。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
自定义资源定义(Custom Resource Definition,简称CRD)是Kubernetes中用于扩展API的重要机制,允许用户定义自己的资源类型。关于自定义CRD的存储,默认情况下,Kubernetes会使用其内置的etcd作为数据存储,包括自定义资源的数据也会保存在etcd中。因此,通常情况下,创建自定义CRD并不需要额外配置etcd服务器,因为etcd的连接信息和配置已经在kube-apiserver启动时通过命令行参数或配置文件指定了。
您提到的--etcd-servers-overrides
参数确实可以用来修改kube-apiserver对etcd服务器的默认连接设置,但这通常不是为了专门针对某个CRD进行的配置,而是对整个API server与etcd交互方式的一种调整。例如,你可能想要为特定API组指定不同的etcd集群,或者调整etcd的访问策略等。这个参数主要用于高级场景,比如多集群部署、性能优化或维护特定资源的隔离性。
对于大多数用户和常规场景来说,只需关注CRD的定义本身,确保其符合Kubernetes API对象的规范,并利用Kubernetes的原生机制来管理这些自定义资源即可。如果确实有特殊需求要对etcd存储进行定制化配置,建议深入阅读Kubernetes官方文档中关于kube-apiserver的配置部分,以及相关的最佳实践,以确保系统的稳定性和兼容性。
阿里云ACK(Alibaba Cloud Container Service for Kubernetes)提供了托管的Kubernetes服务,其中也支持自定义CRD的创建和管理。在ACK环境中,etcd的配置和管理由阿里云负责,用户通常不需要直接操作etcd服务器的配置。如果有特定的存储需求或问题,可以通过ACK的相关服务和支持渠道寻求帮助。