出现这个问题的原因可能是Telegraf配置文件中的插件和Eventhub连接设置不正确。下面是一些检查步骤和示例代码,可根据实际情况进行调整:
[[outputs.eventhub]]
namespace = "eventhub_namespace"
hubname = "eventhub_name"
sas_key_name = "eventhub_sender_key_name"
sas_key = "eventhub_sender_key"
event_type = "myeventtype"
Endpoint=sb://myeventhubnamespace.servicebus.chinacloudapi.cn/;SharedAccessKeyName=Sender;SharedAccessKey=mykey;EntityPath=myeventhub
apiVersion: apps/v1
kind: Deployment
metadata:
name: telegraf
namespace: mynamespace
labels:
app: telegraf
spec:
replicas: 1
selector:
matchLabels:
app: telegraf
template:
metadata:
labels:
app: telegraf
spec:
containers:
- name: telegraf
image: telegraf
ports:
- containerPort: 8125
protocol: UDP
name: statsd
volumeMounts:
- name: telegraf-conf
mountPath: /etc/telegraf
env:
- name: EVENTHUB_CONNECTION_STRING
value: "Endpoint=sb://myeventhubnamespace.servicebus.chinacloudapi.cn/;SharedAccessKeyName=Sender;SharedAccessKey=mykey;EntityPath=myeventhub"
- name: EVENTHUB_EVENT_TYPE
value: "myeventtype"
resources:
limits:
memory: "128Mi"
requests:
memory: "64Mi"
volumes:
- name: telegraf-conf
configMap:
name: telegraf-conf
在以上示例代码中,容器组的Telegraf镜像已经安装好Eventhub插件,并且连接字符串和Event类型已经在环境变量中设置,方便进行修改和扩展。
通过以上步骤,可以修复AKS Telegraf配合Eventhub插件无法工作的问题。