0

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

缩放对象状态

我的缩放对象:

缩放对象

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

我还附上了操作员日志:2021-06-04T08:06:20.130Z INFO 控制器启动 EventSource {“reconcilerGroup”:“keda.sh”,“reconcilerKind”:“ScaledJob”,“controller”:“scaledjob”,“ source": "kind source: /, Kind="} 2021-06-04T08:06:20.130Z INFO controller Starting EventSource {"reconcilerGroup": "keda.sh", "reconcilerKind": "ScaledObject", "controller": "scaledobject", "source": "kind source: /, Kind="} 2021-06-04T08:06:20.130Z INFO controller Starting EventSource {"reconcilerGroup": "keda.sh", "reconcilerKind": "TriggerAuthentication" ,“控制器”:“触发身份验证”,“来源”:“种类来源:/,Kind="} 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”,“控制器”:“clustertriggerauthentication”,“工人计数”:1} 2021-06-04T08:06 :20.230Z INFO 控制器 启动控制器 {"reconcilerGroup": "keda.sh", "reconcilerKind": "TriggerAuthentication", "controller": "triggerauthentication"} 2021-06-04T08:06:20.230Z INFO 控制器启动工人 {"调节器组”:“keda.sh”、“reconcilerKind”:“TriggerAuthentication”、“controller”:“triggerauthentication”、“worker count”:1} 2021-06-04T08:06:20.230Z INFO 控制器启动 EventSource {“reconcilerGroup”:“keda .sh", "reconcilerKind": "ScaledObject", "controller": "scaledobject", "source": "kind source: /, Kind="} 2021-06-04T08:06:20.232Z INFO controller Starting Controller {" reconcilerGroup": "keda.sh", "reconcilerKind": "ScaledJob", "controller": "scaledjob"} 2021-06-04T08:06:20.330Z INFO 控制器启动控制器 {"reconcilerGroup": "keda.sh", “reconcilerKind”:“ScaledObject”,“控制器”:“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”,“控制器”:“scaledjob”,“工人计数”:1} 2021 -06-04T08:07:19.986Z INFO controllers.ScaledObject 协调 ScaledObject {“ScaledObject.Namespace”:“xyz”,“ScaledObject.Name”:“mssql-keda-scaledobject”} 2021-06-04T08:07:19.986Z INFO 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"}ScaledObject.Namespace”:“xyz”,“ScaledObject.Name”:“mssql-keda-scaledobject”,“资源”:“apps/v1.Deployment”,“名称”:“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"}ScaledObject.Namespace”:“xyz”,“ScaledObject.Name”:“mssql-keda-scaledobject”,“资源”:“apps/v1.Deployment”,“名称”:“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"}xyz”,“ScaledObject.Name”:“mssql-keda-scaledobject”,“HPA.Namespace”:“xyz”,“HPA.Name”:“keda-hpa-mssql-keda-scaledobject”}xyz”,“ScaledObject.Name”:“mssql-keda-scaledobject”,“HPA.Namespace”:“xyz”,“HPA.Name”:“keda-hpa-mssql-keda-scaledobject”}

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

任何线索将不胜感激。提前致谢

4

1 回答 1

1

当我开始在 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 连接字符串。

于 2021-09-28T20:36:39.303 回答