操作员将ConfigMap或Secret传递给控制器​​的最佳实践

问题描述

目前,我是新手,正在研究K8s Operator-sdk。我有一个带有初始化Deployment对象的ReconcileController,该Deployment需要configmap和秘密资源。如

                    Volumes: []corev1.Volume{
                        {
                            Name: "configmap-volume",VolumeSource: corev1.VolumeSource{
                                ConfigMap: &corev1.ConfigMapVolumeSource{
                                    LocalObjectReference: corev1.LocalObjectReference{
                                        Name: "configmap_name",},ImagePullSecrets: []corev1.LocalObjectReference{
                        {
                            Name: "pull-image-credential",

我想知道如何将configmap和秘密资源传递给控制器​​。我在想可能有两个选择:

  • 方法1:我先创建configmap对象和秘密对象,然后将它们的名称放在CRD中,然后ReconcileController将收到configmap / secret名称,并且可以访问configmap对象和秘密对象。

  • 方法2:我将configmap / secret原始数据放在磁盘上,在ReconcileController中,读取configmap / secret数据,并使用K8s API动态生成configmap / secret对象,然后我的Deployment可以访问它们。对于这种方法,我觉得ReconcileController是一个循环运行,虽然我希望configmap / secret可以生成一次,但不确定是否可行。

我认为这是一个非常普遍的情况,但是我不知道什么是最佳实践。

感谢您的想法和观点。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...