问题标签 [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.

0 投票
1 回答
272 浏览

mysql - Error_code: 2005 - Mysql Operator - 连接到主服务器时出错

在 3 个节点的集群中,node-1 崩溃,Mysql 容器日志中出现以下错误:

主节点 node-0 是 4/4 并且工作正常。

谢谢

0 投票
1 回答
46 浏览

kubernetes - 我们是否应该始终在 kube-system 命名空间中部署 kube-operators?

假设我想安装像kubedbredis-operator这样的操作符,并且我想在不同的命名空间中部署各自的数据库/CRD,例如 dev、int、prod 等。这些操作符需要在 kube-system 中还是可以在一些独立的命名空间,例如 kubedb 或 redis-ope.. ?

最佳做法是什么?有什么优点和缺点?

0 投票
1 回答
5350 浏览

kubernetes - 有没有办法强制删除 webhook 失败的 crd?

在这种情况下,kubedb操作员已经崩溃并且没有响应 - 但是我需要清理这些资源。

0 投票
1 回答
624 浏览

mysql - 是直接用k8s statefulsets还是用mysql-operator来部署主从mysql集群?

所以想在k8s中部署一个主从的MySQL集群。我发现了 2 种看起来很流行的方法:

  1. 第一种是直接使用k8s官方文档中的statefulsets:https ://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/
  2. 第二种是使用运算符,即https://github.com/oracle/mysql-operator

哪种方式最常用?

另外,在 statefulsets 中,如果我的 MySQL master 死了,k8s 会自动将 slave 提升为 master 吗?

最后,当我的逻辑后端应用程序对 MySQL 集群执行操作(CRUD)时,k8s 如何知道要路由到哪个 pod,即写入操作只能发送给 master,而读取发送给所有?

0 投票
1 回答
519 浏览

kubernetes - Fabric8:openshift/kubernetes java 客户端,创建自定义对象,如 ClusterResourceQuota

我正在研究基于 CRD 自动创建命名空间、标签、注释的 Kubernetes 运算符。

我被fabric8io-kubernetes-client未公开的特定openshift对象ClusterResourceQuota (quota.openshift.io/v1)卡住了。

即使从文件加载,是否有任何替代方法可以创建此类对象...?

0 投票
2 回答
177 浏览

kubernetes - 通过在 Kubernetes 中创建命名空间自动创建资源/对象

我在想办法吗?如果我创建一个新的命名空间,那么我希望它自动为该服务帐户创建一个 RBAC 规则。

我知道一种方法是创建一个操作员,这样就有一个由协调器/api服务器跟踪的事件,它根据 CRD 创建资源。还有其他方法吗?

0 投票
1 回答
375 浏览

kubernetes - 使用 istioctl 和 Istio operator 升级 Istio 1.4.3 到 1.5.6

我可以使现有的 Istio 开源可安装与 (Istioctl + Operator) 兼容吗?我目前通过 istioctl 安装了 Istio 1.4.3 .. 并且需要在升级到 Istio 1.5.6+ 之前让现有的部署 Istio 操作员知道。这里有什么具体的步骤吗?

0 投票
1 回答
1059 浏览

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,而不仅仅是在当前命名空间中。

我错过了什么?

在此先感谢您的帮助!

0 投票
1 回答
1479 浏览

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 运算符一起使用的参考。

是否有首选方式任何其他方式来启用它

0 投票
1 回答
987 浏览

kubernetes - Kubernetes Operator(Operator SDK、Kubebuilder VERSUS Kubernetes 客户端库)

如果这个问题已经得到回答,我很抱歉,但是在尝试了许多不同的谷歌搜索方式后,我未能得到明确的解释,所以我试图在这里寻求澄清。

我熟悉 Kubernetes 上下文中的操作员/控制器模式,并且正在尝试构建一个自定义 nodejs 控制器,该控制器使用来自Kubernetes.io的 nodejs Kubernetes 客户端库之一来处理我自己的自定义资源 (CRD) 。

在网上研究时,我遇到了 OperatorSDK 和 Kubebuilder,它们似乎是可以引导操作员/控制器的工具,提供许多功能来与 K8s Api Server 进行交互,就像 Kubernetes 客户端库一样。

OperatorSDK 和 Kubebuilder 似乎不仅仅是库所以这是我的问题

  1. 来自Kubernetes.io的OperatorSDK、KubebuilderKubernetes 客户端库之间有什么区别
  2. Kubernetes 客户端库是 OperatorSDK 和 Kubebuilder 之类的实现吗?
  3. 我是否需要使用 OperatorSDK 或 Kubebuilder 来实现我自己的控制器,因为据我所知,Kubernetes 客户端库似乎就足够了。