带 MSSQL 触发器的 Keda ScaledObject

Keda ScaledObject with MSSQL trigger

我在我的 k8s 集群中使用 keda 进行自动缩放。使用 MSSQL 触发器部署我的缩放对象后,我准备好了,活动状态为未知。在日志中,我只看到它正在尝试创建 HPA,然后什么也没有发生。我猜 keda-operator 卡在这里了,因为我没有得到任何日志更新。

我的缩放对象:

在执行查询时,我得到的值是 300,这足以启动缩放。

另外我附上操作员日志: 2021-06-04T08:06:20.130Z INFO controller Starting EventSource {“reconcilerGroup”:“keda.sh”,“reconcilerKind”:“ScaledJob”,“controller”:“scaledjob”,“source”:“kind source : /, 种类="} 2021-06-04T08:06:20.130Z INFO controller 启动 EventSource {“reconcilerGroup”:“keda.sh”,“reconcilerKind”:“ScaledObject”,“controller”:“scaledobject”,“source”:“kind source : /, 种类="} 2021-06-04T08:06:20.130Z INFO controller Starting EventSource {“reconcilerGroup”:“keda.sh”,“reconcilerKind”:“TriggerAuthentication”,“controller”:“triggerauthentication”,“source”:“kind source : /, 种类="} 2021-06-04T08:06:20.230Z INFO 控制器启动控制器 {"reconcilerGroup": "keda.sh", "reconcilerKind": "ClusterTriggerAuthentication", "controller": "clustertriggerauthentication"} 2021-06-04T08:06:20.230Z INFO 控制器启动工作人员 {"reconcilerGroup": "keda.sh", "reconcilerKind": "ClusterTriggerAuthentication", "controller": "clustertriggerauthentication", "worker count": 1} 2021-06-04T08:06:20.230Z 信息控制器启动控制器 {"reconcilerGroup": "keda.sh", "reconcilerKind": "TriggerAuthentication", "controller": "triggerauthentication"} 2021-06-04T08:06:20.230Z INFO 控制器启动工人 {"reconcilerGroup": "keda.sh", "reconcilerKind": "TriggerAuthentication", "controller": "triggerauthentication", "worker count": 1} 2021-06-04T08:06:20.230Z INFO controller Starting EventSource {“reconcilerGroup”:“keda.sh”,“reconcilerKind”:“ScaledObject”,“controller”:“scaledobject”,“source”:“kind source : /, 种类="} 2021-06-04T08:06:20.232Z 信息控制器启动控制器 {"reconcilerGroup": "keda.sh", "reconcilerKind": "ScaledJob", "controller": "scaledjob"} 2021-06-04T08:06:20.330Z 信息控制器启动控制器 {"reconcilerGroup": "keda.sh", "reconcilerKind": "ScaledObject", "controller": "scaledobject"} 2021-06-04T08:06:20.331Z INFO 控制器启动工人 {"reconcilerGroup": "keda.sh", "reconcilerKind": "ScaledObject", "controller": "scaledobject", "worker count": 1} 2021-06-04T08:06:20.332Z INFO 控制器启动工人 {"reconcilerGroup": "keda.sh", "reconcilerKind": "ScaledJob", "controller": "scaledjob", "worker count": 1} 2021-06-04T08:07:19.986Z 信息 controllers.ScaledObject 协调 ScaledObject {"ScaledObject.Namespace": "xyz", "ScaledObject.Name": "mssql-keda-scaledobject “} 2021-06-04T08:07:19.986Z 信息 controllers.ScaledObject 为 ScaledObject 添加终结器 {"ScaledObject.Namespace": "xyz", "ScaledObject.Name": "mssql- keda-scaledobject"} 2021-06-04T08:07:20.052Z INFO controllers.ScaledObject 检测到用于缩放的资源 {"ScaledObject.Namespace": "xyz", "ScaledObject.Name": "mssql- keda-scaledobject", "resource": "apps/v1.Deployment", "name": "xyzxyzxyzxyzxyzxyzxyz"} 2021-06-04T08:07:20.052Z INFO controllers.ScaledObject 创建一个新的 HPA {"ScaledObject.Namespace": "xyz", "ScaledObject.Name": "mssql-keda -scaledobject", "HPA.Namespace": "xyz", "HPA.Name": "keda-hpa-mssql-keda-scaledobject"}

我正在为其他缩放对象创建 hpa。此外,如果我提供的 sql 连接凭据错误,我会收到相应的身份验证错误。所以我想这不是连接问题。

如有任何线索,我们将不胜感激。提前致谢

当我开始在 Azure Kubernetes 服务中的 Azure Function 应用程序上使用 KEDA 的 MSSQL 触发器时,我也遇到了问题。

我遇到了一些问题,因此您也可以尝试检查这些问题:

科达版

KEDA 2.2 版本是第一个支持MSSQL 触发器的版本,我必须获取keda-operator 的操作员日志才能弄清楚使用KEDA 2.1 版本无法找到MSSQL 触发器。您的操作员日志似乎没有说“找不到触发器 MSSQL”,但您可以仔细检查。 KEDA 2.4 是我的好运,您可以按照以下说明进行安装:https://keda.sh/docs/2.4/deploy/

ScaledObject 问题疑难解答

您可以首先使用

找到您的 ScaledObject 的名称
kubectl get scaledobject -A

然后描述 ScaledObject,您应该会看到底部列出的任何错误或问题,例如身份验证问题或为 KEDA 创建 HPA 的问题:

kubectl describe scaledobject <your-scaled-object-name> 

最终我的问题需要安装正确版本的 KEDA,并修改我的 MSSQL 连接字符串。