问题标签 [kubernetes-operator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - Error_code: 2005 - Mysql Operator - 连接到主服务器时出错
在 3 个节点的集群中,node-1 崩溃,Mysql 容器日志中出现以下错误:
主节点 node-0 是 4/4 并且工作正常。
谢谢
kubernetes - 我们是否应该始终在 kube-system 命名空间中部署 kube-operators?
假设我想安装像kubedb或redis-operator这样的操作符,并且我想在不同的命名空间中部署各自的数据库/CRD,例如 dev、int、prod 等。这些操作符需要在 kube-system 中还是可以在一些独立的命名空间,例如 kubedb 或 redis-ope.. ?
最佳做法是什么?有什么优点和缺点?
kubernetes - 有没有办法强制删除 webhook 失败的 crd?
在这种情况下,kubedb操作员已经崩溃并且没有响应 - 但是我需要清理这些资源。
mysql - 是直接用k8s statefulsets还是用mysql-operator来部署主从mysql集群?
所以想在k8s中部署一个主从的MySQL集群。我发现了 2 种看起来很流行的方法:
- 第一种是直接使用k8s官方文档中的statefulsets:https ://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/
- 第二种是使用运算符,即https://github.com/oracle/mysql-operator
哪种方式最常用?
另外,在 statefulsets 中,如果我的 MySQL master 死了,k8s 会自动将 slave 提升为 master 吗?
最后,当我的逻辑后端应用程序对 MySQL 集群执行操作(CRUD)时,k8s 如何知道要路由到哪个 pod,即写入操作只能发送给 master,而读取发送给所有?
kubernetes - Fabric8:openshift/kubernetes java 客户端,创建自定义对象,如 ClusterResourceQuota
我正在研究基于 CRD 自动创建命名空间、标签、注释的 Kubernetes 运算符。
我被fabric8io-kubernetes-client未公开的特定openshift对象ClusterResourceQuota (quota.openshift.io/v1)卡住了。
即使从文件加载,是否有任何替代方法可以创建此类对象...?
kubernetes - 通过在 Kubernetes 中创建命名空间自动创建资源/对象
我在想办法吗?如果我创建一个新的命名空间,那么我希望它自动为该服务帐户创建一个 RBAC 规则。
我知道一种方法是创建一个操作员,这样就有一个由协调器/api服务器跟踪的事件,它根据 CRD 创建资源。还有其他方法吗?
kubernetes - 使用 istioctl 和 Istio operator 升级 Istio 1.4.3 到 1.5.6
我可以使现有的 Istio 开源可安装与 (Istioctl + Operator) 兼容吗?我目前通过 istioctl 安装了 Istio 1.4.3 .. 并且需要在升级到 Istio 1.5.6+ 之前让现有的部署 Istio 操作员知道。这里有什么具体的步骤吗?
java - SharedIndexInformer (Fabric8 kubernetes-client) 在集群中运行时只监视自己命名空间的 pod
我正在尝试使用出色的 Java 版 Fabric8 Kubernetes 客户端(https://github.com/fabric8io/kubernetes-client)构建 Kubernetes 控制器。截至目前,我使用该版本4.10.3
。
为此,我正在构建一个SharedIndexInformer
以正确监视集群发出的资源事件。我将在这里以 pod 作为资源示例。
所以SharedIndexInformer
是按照这段代码构造的:
接下来,附加事件处理程序、启动索引器、进行协调循环等的大量代码。
从我的本地计算机启动时,索引器工作得非常好,我看到所有的 pod 都被列出来了。但是,当我在集群中的 pod 上运行它时(正确定义了 RBAC),我只看到运行 pod 的命名空间的 pod。
我在 pod 中明确检查,使用kubectl
关联的服务帐户能够列出集群中的所有 pod,而不仅仅是在当前命名空间中。
我错过了什么?
在此先感谢您的帮助!
docker - 如果使用 kubernetes 中的 rabbitmq 操作符部署 rabbitmq,如何启用 rabbitmq 插件“rabbitmq_delayed_message_exchange”
我在kubernetes中使用rabbitmq 运算符部署了一个rabbitmq实例。我正在尝试启用rabbitmq 插件: rabbitmq_delayed_message_exchange。
我尝试将我的RabbitmqCluster定义为:
然后我跑了kubectl apply -f definition.yaml
但我的pod 日志显示了这一点:
日志中没有对此插件的任何引用。
我进入我的 rabbitmq pod 并运行:rabbitmq-plugins list
并检查了pod plugins/ 目录:
所以这意味着插件没有集成。
我还发现了这个:
如何在 kubernetes 上安装 rabbitmq 插件?
但是没有提到rabbitmq操作符,它是在2018年6月被问到的。同样在 rabbitmq 操作员配置中,没有任何关于使用生命周期挂钩挂载 ez 文件的参考。
我想到的1 个想法是创建我自己的rabbitmq 图像,引用rabbitmq 官方图像并添加插件。
第二个想法是通过使用文件定义配置映射并使用 volumeMounts 将文件挂载到 pod 文件目录中,但我找不到任何将 volumeMounts 与 rabbitmq 运算符一起使用的参考。
是否有首选方式或任何其他方式来启用它?
kubernetes - Kubernetes Operator(Operator SDK、Kubebuilder VERSUS Kubernetes 客户端库)
如果这个问题已经得到回答,我很抱歉,但是在尝试了许多不同的谷歌搜索方式后,我未能得到明确的解释,所以我试图在这里寻求澄清。
我熟悉 Kubernetes 上下文中的操作员/控制器模式,并且正在尝试构建一个自定义 nodejs 控制器,该控制器使用来自Kubernetes.io的 nodejs Kubernetes 客户端库之一来处理我自己的自定义资源 (CRD) 。
在网上研究时,我遇到了 OperatorSDK 和 Kubebuilder,它们似乎是可以引导操作员/控制器的工具,提供许多功能来与 K8s Api Server 进行交互,就像 Kubernetes 客户端库一样。
OperatorSDK 和 Kubebuilder 似乎不仅仅是库所以这是我的问题
- 来自Kubernetes.io的OperatorSDK、Kubebuilder和Kubernetes 客户端库之间有什么区别
- Kubernetes 客户端库是 OperatorSDK 和 Kubebuilder 之类的实现吗?
- 我是否需要使用 OperatorSDK 或 Kubebuilder 来实现我自己的控制器,因为据我所知,Kubernetes 客户端库似乎就足够了。